[英]Gulp.js - Inject project details at the beginning of the file
在我的JavaScript文件的开头,我有一条注释,承载着这样的项目详细信息:
// { project name }
// { project website }
// { author }
例如它应该看起来像这样
/// FoobarProject 2.0.1
/// www.foobar.com/foobarproject
/// John Doe <john.doe@hotmail.com>
;(function(){
//...
}());
将这些详细信息与我的package.json对齐的最佳方法是什么? 因此,当我在package.json中更新版本并执行“生成”任务时,gulp应该更新该版本。
我不喜欢有两个文件的想法:
我更喜欢构建任务直接替换文件中的值的方法。 此外,在执行minifier(uglify)之后,该注释应加前缀。
所以我的问题可以归结为:实现“ replaceFirstThreeLinesWith”的最佳方法是什么:
gulp.task('inject-projectdetails', function(){
var header = [
util.format('// FoobarModule.js %s', pkg.version),
util.format('// %s', pkg.homepage),
util.format('// %s', pkg.author),
].join('');
return gulp.src('FoobarModule.js')
.pipe( replaceFirstThreeLinesWith(header) )
.pipe(gulp.dest('.') );
});
您可以使用gulp-header插件: https : //www.npmjs.com/package/gulp-header
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.