我尝试在Gulp中重现一些我可以用Grunt做的事情:写一个日期来提交后者的生成(Stylus - > CSS或Jade - > html)。
以下是我对Grunt所做的事(带有grunt-banner):
// *.Gruntfile.js
<%= grunt.template.today("yyyy-mm-dd H:MM:ss") %>
如何在Gulp下?最重要的是,什么使用插件Gulp(我还没有发现相当于grunt-banner ...)?
编辑:
我看着gulp-header,然后我终于决定吞下替换。事实上,头文件中的第一个横幅广告,但我的目标是替换现有信息。
示例:
// Gulpfile.js
var pkg = require('./package.json'),
rename = require('gulp-rename');
gulp.task('templates', function() {
return gulp
.src(source + '/Styles/Header.styl')
.pipe(replace(/@-name .*\n/g, '@-name ' + pkg.name + '\n'))
.pipe(replace(/@-description .*\n/g, '@-description ' + pkg.description + '\n'))
.pipe(replace(/@-version .*\n/g, '@-version ' + pkg.version + '\n'))
.pipe(replace(/@-author .*\n/g, '@-author ' + pkg.author + '\n'))
.pipe(replace(/@-homepage .*\n/g, '@-homepage ' + pkg.homepage + '\n'))
.pipe(replace(/@-license .*\n/g, '@-license ' + pkg.license + '\n'))
.pipe(gulp.dest(source + '/Styles'))
});
但我仍然不知道如何在Grunt下修改日期......
答案 0 :(得分:0)
好吧,我找到了:
var versionDate = new Date(); // javascript, just
在它给出的上下文中移动:
gulp.task('templates', function() {
return gulp
.src(source + '/Styles/Header.styl')
.pipe(replace(/@name .*\n/g, '@name ' + pkg.name + '\n'))
.pipe(replace(/@description .*\n/g, '@description ' + pkg.description + '\n'))
.pipe(replace(/@version .*\n/g, '@version ' + pkg.version + '\n'))
.pipe(replace(/@lastmodified .*\n/g, '@lastmodified ' + versionDate + '\n'))
.pipe(replace(/@author .*\n/g, '@author ' + pkg.author + '\n'))
.pipe(replace(/@homepage .*\n/g, '@homepage ' + pkg.homepage + '\n'))
.pipe(replace(/@license .*\n/g, '@license ' + pkg.license + '\n'))
.pipe(gulp.dest(source + '/Styles'))
});
答案 1 :(得分:0)
替代方案:
var headerComment = require('gulp-header-comment');
在管道中:
.pipe(headerComment(`Generated on: <%= moment().format('DD.MM.YY') %>`))