gulp.src只选择传递数组的最后一个元素

时间:2019-07-18 16:53:44

标签: gulp gulp-inject

这是我的代码:

gulp.task('path', function() {
  return gulp.src('js/dummy.js', {
    base: './',
  }).pipe(inject(gulp.src(["include1", "include2", "includen"], {
        read: false
      }), {
        starttag: '/* inject:dummy */ [',
        endtag: ']',
        transform: function(filepath, file, i, length) {
          filepath = filepath.split(path.sep);
          filepath.splice(0, 1);
          filepath = filepath.join(path.sep);
          ## console.log('\'' + filepath + '\'' + (i + 1 < length ? ', ' : ''));
          return '\'' + filepath + '\'' + (i + 1 < length ? ', ' : '');
        }
      }))
      .on('error', function(err) {
        logger(colors.red('[Error]'), err.toString());
      })
      .pipe(rename('js/dummy.js'))
      .pipe(gulp.dest('./'));
});

以##开头的console.log语句仅打印传递到gulp.src的数组中的最后一个元素。这是什么问题?

注意:这些路径是正确的,我只是将它们替换为虚拟对象。

更新

Gulp版本为:3.9.1

NPM版本为:6.10.0

更高的版本是:1.8.8

0 个答案:

没有答案