问题标签 [gulp-watch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
717 浏览

pug - 仅使用 gulp-jade-find-affected 重建受影响的翡翠文件

我正在尝试使用gulp-jade-find-affected与观察者一起重建受影响的文件。例如,如果我在布局或 mixin 文件中进行更新,我只想重建包含 mixin 的文件。

但是插件的 Github 上的示例由于 gulp-watch 的更新(emitOnGlob 选项不再存在)而不起作用。

经过研究,我找到了这个解决方案,并尝试根据我的情况对其进行调整,但它不起作用:

如果有人有任何想法做我想做的事,我将不胜感激!

感谢您的关注。

0 投票
1 回答
261 浏览

gulp - gulp-watch 不更新 gulp-jshint

这段代码有什么问题:

当我编辑一个 js 文件时出现错误 jshint 什么也不显示。

这有效:

但它是否完全一样?

0 投票
1 回答
1239 浏览

gulp - 使用 gulp/node/libsass 编译需要 30 多秒

我正在使用 Gulp 和 node-sass 来编译我的 sass。我也在使用 node-neat 和 node-bourbon。但是,当我编译时,需要 30-50 秒!我究竟做错了什么?我不太确定 libsass 如何在 gulp-sass 和 node-sass 中发挥作用,或者 gulp-sass 和 node-sass 之间的区别是什么。在我的 gulpfile.js 中,我都尝试了sass = require('gulp-sass'),sass = require('node-sass'),但它们给了我相同的结果。另外,我正在使用管道工,如果出现错误,它会停止观看。这是我的 gulpfile.js:

0 投票
1 回答
4373 浏览

javascript - Gulpfile 仅有效编译已更改的 TypeScript 文件

我正在尝试让 gulp 编译并观看 TypeScript 文件。这是我到目前为止所得到的

我正在使用gulp-typescript

但是,由于我们有数百个 TypeScript 文件,我不想在其中一个文件发生更改时重新编译所有文件。上面的代码可以做到这一点(我可以说是因为watch-typescript至少需要和 一样多的时间compile-typescript

我试过使用gulp-changed,像这样

这确实过滤掉了未更改的文件。但是随后 typescript 编译器报告错误,因为它只获取一个文件,该文件缺少通常从其他文件获取的类型声明。

我不想将noExternalResolve标志设置为 true,因为从那时起将不会进行大量类型检查,这首先破坏了使用 TypeScript 的很多原因。

我怎样才能更好地编写这个 gulpfile?

0 投票
1 回答
944 浏览

gulp - 如何使用 gulp-watch 和 gulp-less 传递相对目标路径

所以我想观察对更少文件所做的更改,并使 CSS 的目标路径与更改的更少文件所在的文件夹相同。

这是一般文件结构:

这是我认为可能可行的方法,但我意识到路径可能没有意义,而且我不确定通过正确目的地的最佳方式。

谢谢

0 投票
0 回答
1378 浏览

javascript - Gulp 观察,增量构建

我正在努力让自己的gulp-watch行为随心所欲。这个小项目是从 Jade+SASS 以可重复的方式构建 HTML5 电子邮件模板的工具。目录结构如下:

我的愿望清单是这样的:

  • 在样式或模板更改时构建所有模板。这是我做不到的
  • 不要有一个seaerate的“冷”启动,总是使用gulp增量构建。(这似乎有效)
  • 实时重新加载会重新加载浏览器,这很酷。(这个也是)

为简洁起见,以 CoffeeScript 表示法包含在下面Gulpfile,它主要基于文档增量重建,包括对完整文件集进行操作

如果可能的话,并且我已经在 GNU Make 或类似工具中编写了这个观察程序,我可以选择表达它build/,并在它们所依赖的文件过时时依赖工具来重建这些文件。

我已经看到有许多gulp-<something about inlining>插件,但是它们都没有通过查看为更改而导入的路径来明确它们是否支持这种有条件的重新编译(我对此表示怀疑)。

鉴于我在系统编程方面的背景,我很可能以一种完全错误的方式接近 Javascript 构建工具。

0 投票
1 回答
631 浏览

caching - gulp-ruby-sass 插件不缓存 Sass 文件

如何使用gulp-ruby-sass缓存 Sass 文件?似乎它应该是一个默认选项,但这并没有发生。我肯定错过了什么。

watch任务运行时,每次我更改app/styles/main.scss中的某些内容时,gulp-ruby-sass都会不必要地再次编译 Bootstrap 的 Sass,占用大约4-5 秒的额外时间

我的app/styles/main.scss文件如下所示:

gulpfile.js是在2014 年 11 月 25日使用generator-gulp-webapp 0.1.0 生成的,链接到 git repo 的 master 分支。

在这里查看 gulpfile.js

样式功能:

正在创建.sass-cachemain.scssc文件夹,其文件夹包括Bootstrap 的部分内容。

更新

到目前为止,我已经找到了两种解决方案(虽然不是用于缓存,而是用于更快的编译时间):

1) gulp-ruby-sass 版本 1.0 (alpha),它更快并且可以与源映射一起使用。似乎很快就会发布。检查这个

2) gulp-sass使用 C/C++,速度非常快,但没有一些特性。

0 投票
1 回答
789 浏览

javascript - 为什么 gulp-sprite-generator 会抛出“SyntaxError: Unexpected token ;”?

运行我的 gulp 任务时出现以下错误:SyntaxError: Unexpected token ;- 我想知道这与我的 Gulp 任务有什么关系?

我已经安装了代码中提到的两个模块。我在根目录中有我的 gulp 文件,并且还创建了 srcbaseUrl目录。在我的 css 目录中,我有一个简单的 .css 文件,其中包含以下内容:

作为参考,这是gulp-sprite-generator

来自控制台的完整错误:

0 投票
1 回答
255 浏览

javascript - 与普通的“gulp less”命令相比,“gulp watch”事件的编译时间要少一倍

我的 Gulp 'watch' less 函数存在问题,因为与单个 less 函数相比,编译 less 文件的时间要长 2 倍。

当我使用“gulp less”时,平均需要 9/10 秒

但是,当我使用“gulp watch-less”时,然后更改一个文件以触发 watch 功能,与“gulpless”相比,它所花费的时间大约是两倍。

下面是我的 gulpfile.js,它引入了“paths.json”,因为我有 5 个不同的主题(此问题的名称已更改),因此需要将正在使用的较少文件输出到相关文件夹中,这就是为什么我使用函数“updateDestFolder”。

导入 less 的方式是基础主题的更改应该更新主题 2-5。

路径.json:

如果有人可以建议在不需要使用该功能的情况下确定 dest 文件夹的任何改进,我也将不胜感激。

谢谢

0 投票
2 回答
1584 浏览

gulp - gulp-watch,gulp-watch-less 不要开火

在遵循记录的示例后,我无法让gulp-watchgulp-watch-less触发。我最初遇到的问题是lazypipe(此处未显示),但在我看来,我在使用插件的方式上做错了。这是我的愚蠢代码,但仍然无法正常工作。

请注意,我使用普通的 gulp-watch 进行了尝试,它表现出完全相同的问题:它不会触发后续管道的更改。如果出现问题,我将在此处包含相关信息。

这是我的 gulpfile。

当我启动任务时,它会完美地执行并生成预期的文件。我看到调试输出流信息也很好。

当我更改文件时,我看到 watchLess 正在接受更改:

但是,较少的任务不会执行。它似乎没有发出任何东西,因为调试没有触发。

这是相关的 package.json 信息: