webpack 4 似乎正在将这样的代码添加到包中
try {
n = n || new Function("return this")();
} catch (e) {
"object" == typeof window && (n = window);
}
我们有严格的安全性,这意味着这将因为代码而使cspnew Function
失败。
不幸的是,添加unsafe-eval
到 csp 不是一种选择。
是否可以阻止 wepback 添加此代码?
我尝试将节点设置为以下内容:
node: {
module: 'empty',
dgram: 'empty',
dns: 'mock',
fs: 'empty',
http2: 'empty',
net: 'empty',
tls: 'empty',
child_process: 'empty',
setImmediate: false,
setTimeout: false,
setInterval: false,
global: false
},
我是这样设置devtool
的:
devtool: 'cheap-module-source-map',
我已经设置globlObject
为window
globalObject: 'window',
这减少了new Function
调用次数,但并未删除它们。
理想情况下,我们应该使用这个 polyfill