我正在尝试将我的代码从常规js迁移到webpack。
过去,我为默认Array
或Object
类型添加了新功能,然后在代码中使用这些功能。我也想在 webpack 中保持这些新功能的全局性。例如,我如何告诉 webpack 修改Array
类型,并在每个文件中添加新功能,而无需在每次我想使用它时都导入这行代码?
这是我过去的做法:
Array.prototype.clean = function(deleteValue) {
for (var i = 0; i < this.length; i++) {
if (this[i] == deleteValue) {
this.splice(i, 1);
i--;
}
}
return this;
};
来自 webpack Shimming Globals 文档:
我们不建议使用全局变量!webpack 背后的整个概念是允许更多的模块化前端开发。这意味着编写包含良好且不依赖于隐藏依赖项(例如全局(的隔离模块。请仅在必要时使用这些功能。
您可以将新的原型功能(如Array.prototype.clean
(放在定义的 webpack 条目的顶部,可能index.js
.
因此,将可用于您的整个项目。
如果您有多个条目文件, 您可以创建一个包含所有原型的文件prototype.js
,并将其作为第一个入口文件。