我安装了以下模块:

  • babelify
  • babel-preset-es2015
  • browserify
  • uglifyify

  • 现在,我有一个包含ES6 JavaScript的核心文件server.js。我可以将ES6转换为ES5,并使用以下命令将代码捆绑到浏览器中:
    browserify server.js -o ./public/bundle.js -t [ babelify --presets [es2015] ]
    

    但是现在我想得到uglifyify 来减少代码并添加源映射。我无法执行此操作,只是无法制定正确的命令。我尝试了以下方法:
    browserify server.js -t uglifyify -t [ babelify --presets [es2015] ] -o ./public/bundle.js
    
    browserify server.js -o ./public/bundle.js -t [ uglifyify, babelify --presets [es2015] ]
    
    browserify server.js uglifyify -o ./public/bundle.js -t [ babelify --presets [es2015] ]
    

    甚至没有通天塔:
    browserify server.js -o ./public/bundle.js -t uglifyify
    browserify server.js -t uglifyify -o ./public/bundle.js
    

    最佳答案

    仅在本地安装uglifyify是不够的-您还需要安装uglify-es globaly,因为uglifyify使用了它。您可以像这样安装它:

    npm i -g uglify-es
    

    然后像这样使用它:
    browserify server.js -o ./public/bundle.js -t uglifyify
    

    与babelify一起使用

    如果您还需要babelify,请按以下步骤操作:
    browserify server.js -o ./public/bundle.js -t uglifyify -t babelify
    

    直接使用uglify-es

    您也可以直接使用uglifyify完全跳过使用uglify-es,如下所示:
    browserify server.js | uglifyjs -c > ./public/bundle.js
    
    uglifyify的唯一目的是使uglify-es可以用作browserify 转换

    关于javascript - 从Browserify绑定(bind)捆绑的JS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33587180/

    10-11 09:18