使用browserify对js文件进行版本控制,以防止客户端使用旧的js文件

我已经开始使用browserify而不是requirejs,在requirejs上我可以在config中使用urlArgs,当我更改js代码时给出新的版本号。 以便浏览器不会使用先前caching的js文件。

我couldntfind如何添加这个。 这是我现在的大嘴文件,

..... gulp.task('browserify', function () { var browserified = transform(function(filename) { var b = browserify(filename); return b.bundle(); }); return gulp.src(['./js/main.js']) .pipe(browserified) // .pipe(uglify()) // commented out on testing environment. .pipe(gulp.dest('./dist/js')); }); .... gulp.task('html', function() { return gulp.src('./src/index.html') .pipe(htmlreplace({ 'css': 'css/main.css', 'js': { src: [ ... // infrastructural js files / plugins 'js/main.js' ] } })) .pipe(gulp.dest('./dist/')); }); ..... gulp.task('default', ['browserify', 'html'], function (callback) { callback(); console.log('\nPlaced optimized files in ' + chalk.magenta('dist/\n')); }); 

我已经尝试在htmlreplace任务中添加?v = 0.01到main.js,但是它产生了

 js/main.js?v=0.1 

代替

 <script src="js/main.js"></script> 

我们在所有文件上使用gulp-buster来caching所有对静态资产的引用。 我想你可以把它设置得更具体一点,它是什么文件。