当前位置: 代码迷 >> 综合 >> webpack 中 loader 配置项 exclude、include 对打包的影响
  详细解决方案

webpack 中 loader 配置项 exclude、include 对打包的影响

热度:85   发布时间:2023-12-11 23:23:43.0

这是在实际开发过程中遇到的问题。

遇到这个问题的契机:

我要开发一套底层框架,所有由此派生出的【一系列项目】可以直接引用这个项目,然后在此基础上添加业务。那么,ui 框架和 webpack 自然是不可或缺。于是,在配置这些 loader 的时候,因为为了让 webpack 更加高效,自然地使用了:

exclude: /node_modules/,

这样的配置。

于是我将它作为底层依赖框架,新建了一个实际项目,然后通过 package.json 引入这个项目,从它里面导出 webpack.config.js 并运行,发现我的模板以及语法无法被编译。

而当我删掉上面的配置之后,就可以正常编译了。

所以,这里是犯了一个明显的低级错误,底层依赖框架的代码位于 ./node_modules 中,而我的 loader 却把这里面的代码排除了

所以我对 loader 的配置进行了更改,虽然还是要排除 ./node_modules,但是包含了自己的包,让 loader 不会忽略这些包:

include: resolve(__dirname,'../web'),    //    我的包的内容的路径

值得注意的是,exclude 的优先级高于 include,是 test && include && ( !exclude ) 的关系

webpack-test-include-exclude | BryanAdamss的博客

  相关解决方案