代码之家  ›  专栏  ›  技术社区  ›  Nikola Stojaković

使用Gulp在复制过程中重命名一个文件

  •  0
  • Nikola Stojaković  · 技术社区  · 6 年前

    我想自动打包Chrome和Firefox的扩展程序,为此我正在使用Gulp。我有两个不同的清单文件,一个用于Chrome,一个用于Firefox( manifest.json manifestff.json )在项目的根目录中。现在,我想:

    1. 将所有需要的内容复制到Chrome扩展目录。
    2. 对Firefox扩展做同样的事情,除了我想重命名 manifestff.json文件 进入之内 清单.json 在这个过程中。

    以下是我当前打包Firefox扩展的任务:

    gulp.task('pack-firefox', () => {
        return gulp.src([
            'manifestff.json',
            'index.html',
            './public/**'
        ], {'base': '.'})
        .pipe(gulp.dest('./ff'));
    }
    

    是否可以指定(附加 .pipe() )我想复制的 manifestff.json文件 作为 清单.json ?

    1 回复  |  直到 6 年前
        1
  •  1
  •   Mark    6 年前

    观察 gulp-if

    const gulp = require('gulp');
    const rename = require('gulp-rename');
    const gulpIF = require('gulp-if');
    
    
    gulp.task('pack-firefox', () => {
      return gulp.src([
        'manifestff.json',
        'index.html',
        './public/**'
      ], { 'base': '.' })
        .pipe(gulpIF(function (file) { return file.path.match('manifestff.json') }, rename('manifest.json')))
        .pipe(gulp.dest('./ff'));
    });