Gulp Inject没有注入我的所有文件。仅添加一个main.scss文件

Gulp Inject没有注入我的所有文件。仅添加一个main.scss文件,gulp,gulp-inject,Gulp,Gulp Inject,我在重建后的gulp inject中面临着昨天的问题,gulp inject没有注入我的所有文件。仅添加一个main.scss文件 在gulp造型任务中没有更改任何内容。同样的代码也在我的后台环境中工作,因为我没有重新生成gulp 下面是代码片段 var injectFiles = gulp.src([ path.join(conf.paths.src, '/sass/**/_*.scss'), '!' + path.join(conf.paths.src, '/sass/t

我在重建后的gulp inject中面临着昨天的问题,gulp inject没有注入我的所有文件。仅添加一个main.scss文件

在gulp造型任务中没有更改任何内容。同样的代码也在我的后台环境中工作,因为我没有重新生成gulp

下面是代码片段

  var injectFiles = gulp.src([
    path.join(conf.paths.src, '/sass/**/_*.scss'),
    '!' + path.join(conf.paths.src, '/sass/theme/conf/**/*.scss'),
    '!' + path.join(conf.paths.src, '/sass/404.scss'),
    '!' + path.join(conf.paths.src, '/sass/auth.scss')
  ], {read: false});

  var injectOptions = {
    transform: function (filePath) {
      filePath = filePath.replace(conf.paths.src + '/sass/', '');
      return '@import "' + filePath + '";';
    },
    starttag: '// injector',
    endtag: '// endinjector',
    addRootSlash: false
  };

  return gulp.src([
    path.join(conf.paths.src, '/sass/main.scss')
  ])
    .pipe($.inject(injectFiles, injectOptions))
    .pipe(wiredep(_.extend({}, conf.wiredep)))
    .pipe($.sourcemaps.init())
    .pipe($.sass(sassOptions)).on('error', conf.errorHandler('Sass'))
    .pipe($.autoprefixer()).on('error', conf.errorHandler('Autoprefixer'))
    .pipe($.sourcemaps.write())
    .pipe(gulp.dest(path.join(conf.paths.tmp, '/serve/app/')));
};

评估package-lock.json文件后。gulp inject需要以下依赖项

"gulp-inject": {
  "requires": {
    "arrify": "^1.0.1",
    "escape-string-regexp": "^1.0.5",
    "event-stream": "^3.1.0",
    "group-array": "^0.3.0",
    "gulp-util": "^3.0.0",
    "stream-to-array": "^2.3.0",
    "through2": "^2.0.1"
  }
},
在一个接一个地恢复所有必需依赖项的版本后,我能够修复此问题。 这是由于团队的原因-array@0.3.4在我的package-lock.json文件中

"group-array": {
  "version": "0.3.4",
  "requires": {
    "arr-flatten": "^1.0.1",
    "for-own": "^0.1.4",
    "get-value": "^2.0.6",
    "kind-of": "^3.1.0",
    "split-string": "^1.0.1",
    "union-value": "^1.0.1"
  }
通过在my package.json文件中添加安装后脚本修复了此问题

"postinstall": "npm i group-array@0.3.3 --save"

发现将gulp inject更新到5.0.3版修复了该问题。

这是一个生命救世主:)请注意,它不适用于Node10,但适用于Node8。非常感谢!是的,这把它修好了!然而,我正在运行Node10和吞咽-inject@5.0.3它可以很好地为我注入所有应该注入的文件。是的,他们后来更新了版本。谢谢你的回复