我已将Webpack从3.8.1迁移到4.41.2。我一直在独立的javascript文件中遇到“此”上下文的问题。请检查以下代码:
util.js
export const calculateSum = (a,b) => {
this.sum = 0;
this.sum += a + b;
return this.sum;
};
请注意,上面是描述问题的示例代码。
使用webpack 3.8.1时,我可以使用上面示例中的“ this”对象,但是在迁移到4.41.2后,我无法使用。
我在很大的代码库中有很多这样的情况,因此在各处更改代码都是不可行的。在webpack配置中找不到此类选项。
如何修复新版本的webpack?
答案 0 :(得分:2)
根据此issue,Webpack将“ this”转换为类定义中的未定义。
开发人员表示,他们已修复了Webpack 4 this
maybe you use global webpack installation
问题
如果无法安装webpack,则可以尝试this question,这可能是Babel问题。
Babel 6,Babel 7有不同的解决方案,您可以根据您的Babel版本尝试配置。
希望这会有所帮助。
答案 1 :(得分:0)
尝试: 输出:{ globalObject:“此” }