我需要缩小我正在处理的 javascript 项目中的常量值。
目前我将常量定义为如下所示:
export const Constants = {
I_AM_CONSTANT: 'hello',
ANOTHER_CONSTANTS: 10,
YET_ANOTHER_CONSTANTS: false,
NO_MORE_CONSTANT: 'end'
};
我把这个对象放入一个单独的文件中。
然后我使用WebPack的UglifyPlugin来缩小代码。
但是我得到的是类似
e.Constants = {
I_AM_CONSTANT: 'hello',
ANOTHER_CONSTANTS: 10,
YET_ANOTHER_CONSTANTS: false,
NO_MORE_CONSTANT: 'end'
};
这就像根本没有缩小效果。谁能告诉我对这些常量进行缩小的正确方法是什么?我如何更改我的代码?如果可能的话,我还想知道一些在 javascript 中编写常量值的最佳实践。
最佳答案
你无法缩小你所拥有的东西,因为缩小后的东西不知道可以用在哪里。如果您正确使用了注入(inject),那么消耗的代码可以被缩小,例如
var closure = function(constants){
//constants used lots in here.
}(e.Constants);
可以安全地压缩为
var closure = function(c){
//c used lots in here.
}(e.Constants);
e.constants
被封闭为局部变量 constants
,这可以愉快地缩小为 c
,因为 minifer 知道它的范围,它位于封闭物内部并被注入(inject)。
这是这样的:
function closure(){
//e.constants used lots in here
}
无法缩小,因为对 e.constants
的任何更改都会被破坏。
关于javascript - 如何在 JavaScript 中缩小常量值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45731969/