使用gulpinject:如何向注入的文件名添加查询字符串

使用gulpinject:如何向注入的文件名添加查询字符串,gulp,gulp-inject,Gulp,Gulp Inject,我使用添加要加载到index.html的文件。为了强制浏览器重新加载js脚本,我想在注入index.html的文件名中添加一个查询字符串 我怀疑这可能与gulp inject的转换函数有关。但是读了这些文件,我不明白如何解决这个问题。你知道吗?好的,看看怎么做 添加如下所示的变换函数: transform: function (filepath) { arguments[0] = filepath + '?v=' + pjson.version; return inject.

我使用添加要加载到index.html的文件。为了强制浏览器重新加载js脚本,我想在注入index.html的文件名中添加一个查询字符串


我怀疑这可能与gulp inject的转换函数有关。但是读了这些文件,我不明白如何解决这个问题。你知道吗?

好的,看看怎么做

添加如下所示的变换函数:

  transform: function (filepath) {
    arguments[0] = filepath + '?v=' + pjson.version;
    return inject.transform.apply(inject.transform, arguments);
  }

仅供参考,我使用更新版本号并获得我的应用程序的软件包信息(包括版本号),如下所示:
var pjson=require('./package.json')

基于EricC答案,完整代码如下所示:

gulp.task('inject', function() {
    return gulp.src(paths.html, {cwd: bases.application})
        .pipe(inject(gulp.src([
            bases.build + 'css/styles.min.css',
            bases.build + 'scripts/app.min.js'
        ]), {
            transform: function (filepath) {
                arguments[0] = filepath + '?v=' + app_version;
                return inject.transform.apply(inject.transform, arguments);
            }
        }
    ))
    .pipe(gulp.dest(bases.build));
});

你能展示你的全部代码吗,因为我不知道在哪里添加转换函数