gpt4 book ai didi

javascript - Gulp.js - 在文件开头注入(inject)项目详细信息

转载 作者:太空宇宙 更新时间:2023-11-04 02:29:45 25 4
gpt4 key购买 nike

在我的 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 应该更新版本。

我不喜欢有两个文件的想法:

  1. 使用占位符的文件“A”(例如 {{ version }})
  2. 文件“B”是构建过程的结果,其中用值填充占位符。

我更喜欢构建任务直接替换文件中的值的方法。此外,在执行压缩器(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

关于javascript - Gulp.js - 在文件开头注入(inject)项目详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27860355/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com