使用gulp來對app進行打包構建

最近APP項目出了一個切換產品的需求,就是要通過構建來切換App的皮膚、logo、文字、圖片等,出了邏輯代碼和頁面結構,基本上其他的都要可切換。

一番考慮過後,果斷使用了gulp來實現。

思路是這樣:
在App項目文件夾下新建一個目錄,裏面放上四個目錄,分別是img,scss,i18n,config。在gulpfile.js中,有如下代碼:

//切換產品
gulp.task('switch',['sass'],function () {
  var product = 'product1';
  if(optionSkin.product ==='product2'){
    product = 'product2'
  }
  //img
  gulp.src('./product/img/'+product+'/**/*')
    .pipe(imagemin())
    .pipe(gulp.dest('./www/img'));

  //i18n
  gulp.src('./product/i18n/'+product+'/*.js')
    .pipe(uglify())
    .pipe(gulp.dest('./www/i18n'));

  //config
  gulp.src('./product/config/config-'+product+'.xml')
    .pipe(rename(function (path) {
      path.basename = 'config'
    }))
    .pipe(gulp.dest('.'));

  //resources
  gulp.src('./product/resources/'+product+'/**/*')
    .pipe(imagemin())
    .pipe(gulp.dest('./resources'))
});

運行 gulp switch 就會將product1想對應的文件打包到www文件目錄下,
運行 gulp switch –product product2就會切換到product2。
這樣就可以做到保持邏輯代碼一致的同時,去維護兩個產品的風格。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章