Typescript编译的代码不适用于混淆器

我有一个用Typescript编写的节点项目。我正在尝试通过Gulp使用混淆器。但这似乎不起作用:

这是我的牙龈文件:

const { series,src,dest,task } = require('gulp');
const uglify = require('gulp-uglify');
const javascriptObfuscator = require('gulp-javascript-obfuscator-fixed');

function CopyFile(){
    return src(['debug/*.js','debug/*.json'])
        .pipe(dest('dist'));
};
function Obfuscate(){
    return src('dist/*.js')
        .pipe(javascriptObfuscator())
        .pipe(uglify());
};
task("Release",series(CopyFile,Obfuscate));

这是我的tsconfig

{
  "compilerOptions": {
    "module": "commonjs","target": "es6","sourceMap": true,"outDir": "debug","resolveJsonmodule": true
  },"exclude": [
    "node_modules"
  ]
}

所以顺序是,打字稿编译,然后复制到dist,然后进行模糊处理。这是我得到的错误:

GulpUglifyError: unable to minify JavaScript
Caused by: SyntaxError: Unexpected token: keyword «const»

这是什么意思?

fangchufeng 回答:Typescript编译的代码不适用于混淆器

https://www.npmjs.com/package/uglify-js上一样:

  
      
  • uglify-js仅支持JavaScript(ECMAScript 5)。
  •   
  • 要缩小ECMAScript 2015或更高版本,请使用Babel等工具进行翻译。
  •   

constES6 ("ES2015") language feature,由于您设置了"target": "es6"而被允许。您可以将target设置为es5,或使用其他工具。

,

这意味着uglify不会讲es6。请尝试以下方法:

https://www.npmjs.com/package/gulp-uglify-es

本文链接:https://www.f2er.com/3113890.html

大家都在问