Javascript 网页包排除文件夹
我正在通过Webpack推送一个相当大的应用程序,它来自两个库文件夹:thirdparty和node_模块。我已将js文件的规则设置为:Javascript 网页包排除文件夹,javascript,webpack,node-modules,webpack-2,babel-loader,Javascript,Webpack,Node Modules,Webpack 2,Babel Loader,我正在通过Webpack推送一个相当大的应用程序,它来自两个库文件夹:thirdparty和node_模块。我已将js文件的规则设置为: { test: /\.js$/, loader: 'babel-loader', include: [ /src\/js\/client/ ], exclude: [ /node_modules/, /thirdparty/ ] } 我的希望是webpack不会解析这两个
{
test: /\.js$/,
loader: 'babel-loader',
include: [
/src\/js\/client/
],
exclude: [
/node_modules/,
/thirdparty/
]
}
我的希望是webpack不会解析这两个目录下的任何文件夹,但我得到的库错误是。例如:
WARNING in ./~/durandal/js/system.js
51:8-15 Critical dependency: require function is used in a way in which dependencies cannot be statically extracted
WARNING in ./~/durandal/js/system.js
52:8-15 Critical dependency: require function is used in a way in which dependencies cannot be statically extracted
ERROR in ./~/durandal/js/system.js
Cannot statically analyse 'require(..., ...)' in line 278
@ ./src/js/client/lib/durandal/overrides/views.js 2:0-37
@ ./src/js/client/index.js
我是否误解了包含/排除的功能,或者这是Webpack的一个错误?规则并不决定Webpack解析哪些文件,而是只应用于包含的文件,并且满足条件。即使您没有任何规则,webpack仍然会解析相同的文件,因为您将它们导入了某个地方 您可以将模块排除在与选项捆绑的范围之外。这些外部必须以某种方式出现在运行时(例如加载在
标记中)
如果您只是希望webpack不解析文件,但仍然包含它们,则可以进行配置。但正如文档所述,它们不应该包含任何导入。在webpack中包含durandal有更好的解决方案吗?没有-webpack 2+使其不可行不幸的是,我的整个程序只是console.log(“hello world”)。没有导入或任何内容,但webpack仍在处理laravel供应商文件夹中的文件。非常差的配置界面。