Вывод gulp-задачи в консоль не выводит ожидаемый результат
У меня есть следующее задание глотка, который вставляет .css
а также .js
файлы в html-файле:
gulp.task('inject', function () {
log('Injecting the JS and CSS files into index.html');
var wiredep = require('wiredep').stream;
var options = config.getWiredepDefaultOptions();
return gulp.src(config.index)
.pipe(wiredep(options))
.pipe($.inject(gulp.src(config.customFiles), {ignorePath: options.ignorePath}))
.pipe(gulp.dest(config.client));
});
и мой gulp.config.js
:
module.exports = function () {
var client = './public';
var config = {
allJS: [
'*.js',
'public/js/*.js',
'public/js/**/*.js'
],
client: client,
index: client + '/index.html',
customFiles: [
'./public/css/*.css',
'./public/js/*.js',
'./public/js/**/*.js'
],
bower: {
json: require('./bower.json'),
directory: './public/lib',
ignorePath: '/public/'
},
};
config.getWiredepDefaultOptions = function () {
var options = {
bowerJson: config.bower.json,
directory: config.bower.directory,
ignorePath: config.bower.ignorePath
};
return options;
};
return config;
};
Это работает, как и ожидалось, но когда я запускаю задачу, я получаю это:
Это всегда говорит gulp-inject 3 files into index.html
даже если новые файлы не были добавлены.
Что-то не так с моим файлом gulp?
1 ответ
Решение
Ну, если вы используете gulp-inject, это то, что я нашел.
Если вы посмотрите на код в gulp-inject, то увидите, что он просто выплевывает количество файлов, если не установлен opt.quiet. Я не видел опцию в документации для этого параметра, но если вы посмотрите на тесты, он показывает пример его использования.
Включение линии связи тихого режима 505
inject(sources, {quiet: true});
Источник, где генерируется лог-оператор. линия связи 109
function getNewContent(target, collection, opt) {
var logger = opt.quiet ? noop : function (filesCount) {
if (filesCount) {
log(cyan(filesCount) + ' files into ' + magenta(target.relative) + '.');
} else {
log('Nothing to inject into ' + magenta(target.relative) + '.');
}
};