【问题标题】:Excluding a file from a gulp task not working从 gulp 任务中排除文件不起作用
【发布时间】:2017-04-03 05:26:32
【问题描述】:

我有一个 gulp 任务放在一起,我需要排除单个文件。任务如下。我尝试了一些排除的变体,例如:!+source...source + '!sass/**/navigation-offcanvas.scss'。显然我的语法是关闭的。我看了这篇文章:https://discourse.roots.io/t/exclude-file-types-in-fonts-task/5356 和这篇文章:https://medium.com/@jack.yin/exclude-directory-pattern-in-gulp-with-glob-in-gulp-src-9cc981f32116,但还没有。

gulp.task('styles', function() {
return gulp.src([
  source + 'sass/**/*.scss',
  !source + 'sass/**/navigation-offcanvas.scss'
])

【问题讨论】:

  • 你试过用这个npmjs.com/package/gulp-ignore
  • 我没有。我没有使用该软件包,也不想将其用于可以本地处理的东西。我也试过这个:'!' + source + 'sass/**/!(navigation-offcanvas.scss)' 仍然没有快乐。该文件不断被编译到我的主 css 文件中。

标签: javascript gulp


【解决方案1】:

not ! 运算符应在字符串中,以这种方式(您在问题中的方式),它正在评估为 javascript 调用,而不是在 gulp 中进行评估。

 gulp.task('styles', function() {
    return gulp.src([
      source + 'sass/**/*.scss',
      '!' + source + 'sass/**/navigation-offcanvas.scss'
    ])

【讨论】:

  • 感谢您,我确实尝试了该模式,但仍然遇到同样的问题。 gulp.task('styles', function() { return gulp.src([ source + 'sass/**/*.scss', '!' + source + 'sass/layouts/navigation-offcanvas.scss' ])
  • 尝试切换数组中的值,在包含之前进行排除
  • 这种语法'!' + source + 'sass/**/!(navigation-offcanvas.scss)' 一直都是正确的...谢谢。我正在将 sass 文件导入另一个样式表... FML。再次感谢,一旦我删除了导入,任务就会运行并排除我想要的。
猜你喜欢
  • 2014-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-04
  • 1970-01-01
  • 2018-07-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多