利用gulp打包------解決ES6代碼打包出錯問題

                          利用gulp打包------解決ES6代碼打包出錯問題

在項目中使用gulp對源碼及項目進行壓縮和打包是很常見的做法,但是實際中可能會遇見uglify執行出錯的問題,本文只針對由於項目中使用ES6語法而造成uglify失敗的問題。

解決這個問題主要是藉助於babel。直接上操作流程。

1、全局安裝babel。使用命令 npm install -g babel        和npm install -g babel-cli

2、本地安裝gulp-babel。   npm install --save-dev gulp-babel

3、安裝babel 輔助插件。 npm install --save-dev babel-preset-env

4、安裝babel 輔助插件。 npm install --save-dev babel-core babel-preset-es2015

5、在項目根目錄創建文件。.babelrc文件。文件內容

{
  "presets": [
    "es2015"
  ],
  "plugins": []
}
6、修改gulpfile.js.關鍵代碼如下
var gulp = require('gulp'),
    uglify = require('gulp-uglify'),
    babel = require('gulp-babel');
    rename = require('gulp-rename');


// 壓縮 js 文件
gulp.task('jscompress', function() {
    return gulp.src('src/script/*.js')
        .pipe(babel())
        .pipe(uglify())
        .pipe(rename({suffix:'.min'}))
        .pipe(gulp.dest('dist/script/'))
        ;
});

gulp.task('default',['jscompress']);

7、這時候運行即可gulp task即可。

 

但是,你有可能執行任務失敗,提示找不到babel-core庫,不管你怎麼安裝都不行。這時候請檢查使用的插件版本是否配套。貼出我的版本,如果版本問題,請 npm  uninstall 庫   重新    npm install 庫@版本即可。

  "devDependencies": {
    "babel-core": "^6.26.3",
    "babel-preset-env": "^1.7.0",
    "babel-preset-es2015": "^6.24.1",
    "gulp": "^3.9.1",
    "gulp-babel": "^7.0.1",
    "gulp-rename": "^1.4.0",
    "gulp-uglify": "^3.0.1"
  }

 

發佈了25 篇原創文章 · 獲贊 30 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章