我正在尝试实现以下用例:
我正在使用Google闭包编译器将它们转换到ES5并将其缩小。它与NPM模块google-closure-compiler的以下配置很好地工作。
default: {
files: {
"A.min.js" : "A.js",
"B.min.js" : "B.js",
"C.min.js" : "C.js",
},
options: {
compilation_level: "SIMPLE",
language_in: "ES6_STRICT",
language_out: "ES5_STRICT"
}
}但我想优化它。上面的配置导致闭包编译器在需要时向所有3个文件“注入”相同的填充(例如,如果A和C使用WeakMap,那么A.min和C.min都包含WeakMap的填充)。
我的问题是,是否有一种方法可以强迫编译器只在A中放置普通的Poly填充?比如,如果B或C正在使用WeakMap,那么如果A使用WeakMap,则将多填充放在A上。如果A没有使用WeakMap,那么就像往常一样将多填充放在B和C上?
发布于 2017-05-07 19:42:55
最好的选择是使用编译器的代码拆分功能来进行单个编译。只应将多填充注入到基文件中。有关示例,请参见如何使用Google的闭包编译器将javascript拆分为模块?。
如果您想继续使用单独的编译,有两个未公开的标志可以帮助:
https://stackoverflow.com/questions/43807412
复制相似问题