Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 防止UglifyJS更改函数参数';名字_Javascript_Meteor_Uglifyjs - Fatal编程技术网

Javascript 防止UglifyJS更改函数参数';名字

Javascript 防止UglifyJS更改函数参数';名字,javascript,meteor,uglifyjs,Javascript,Meteor,Uglifyjs,在测试服务器上部署我的应用程序时,我遇到了一个错误,UglifyJS确实更改了npm依赖模块的函数参数,这些参数的名称很重要;有些函数是动态调用的,我使用它根据相应的名称将某些值映射到某些函数参数 是否可以告诉UglifyJS跳过某些模块或文件等?根据您可以使用的mangle选项: mangle(默认值true)-传递false以跳过损坏名称,或传递对象以指定损坏选项 对象选项: 除外-传递应排除在损坏之外的标识符的数组 toplevel-在toplevel作用域中声明的名称(默认情况下禁

在测试服务器上部署我的应用程序时,我遇到了一个错误,UglifyJS确实更改了npm依赖模块的函数参数,这些参数的名称很重要;有些函数是动态调用的,我使用它根据相应的名称将某些值映射到某些函数参数

是否可以告诉UglifyJS跳过某些模块或文件等?

根据您可以使用的
mangle
选项:

  • mangle
    (默认值
    true
    )-传递
    false
    以跳过损坏名称,或传递对象以指定损坏选项
对象选项:

  • 除外
    -传递应排除在损坏之外的标识符的
    数组
  • toplevel
    -在toplevel作用域中声明的名称(默认情况下禁用)
  • eval
    -在使用eval或with的作用域中,可以看到多个名称(默认情况下禁用)
  • 保留\u fnames
    ——默认值
    false
    。传递
    true
    以避免损坏函数名。对于依赖Function.prototype.name的代码非常有用

我试图找到一个选项来破坏函数名,跳过破坏参数,但到目前为止还没有找到乐趣(不是说没有…)

//tst.js
var globalVar;
function funcName(firstLongName, anotherLongName)
{
  var myVariable = firstLongName +  anotherLongName;
}

UglifyJS.minify("tst.js").code;
// 'function funcName(a,n){}var globalVar;'

UglifyJS.minify("tst.js", { mangle: { except: ['firstLongName'] } }).code;
// 'function funcName(firstLongName,a){}var globalVar;'

UglifyJS.minify("tst.js", { mangle: { toplevel: true } }).code;
// 'function n(n,a){}var a;'