问题标签 [grunt-contrib-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 投票
2 回答
226 浏览

socket.io - 保持任务 grunt 任务打开

我有一个启动 socket-io 服务器的繁重任务。

我找到了一种保持任务“打开”的方法(即,不在命令行上立即退出),方法是在它之后运行“监视”任务。例如

grunt.registerTask('default', ["mytask", "watch"]);

但这需要我在 Gruntfile 中填写一些虚拟数据,例如。

那么有没有办法让我的任务运行而不必同时使用监视任务呢?

谢谢

0 投票
2 回答
15296 浏览

grunt-contrib-watch - 错误:找不到模块 'connect-livereload'

我按照网上http://yeoman.io/上提供的步骤进行操作。完成所有步骤后,我面临此错误消息`$ grunt Loading "Gruntfile.js" tasks...ERROR

错误:找不到模块 'connect-livereload' 警告:找不到任务“默认”。使用 --force 继续`

在我的 package.json 中,我有我所有的依赖包

“connect-livereload”:“~0.2.0”,“grunt-google-cdn”:“~0.2.0”,“grunt-ngmin”:“~0.0.2”,“grunt-contrib-livereload”:“ ~0.1.2"

0 投票
1 回答
1589 浏览

node.js - Grunt.js:在文件被修改后立即触发 livereload,在任务完成之前

我正在使用 Grunt 用指南针编译我的 CSS 并触发浏览器 livereload。这些是我的监视任务:

目前 livereload 任务在样式任务完全完成之前不会触发,但是 imagemin 会增加一些显着的延迟,我真正关心的是 CSS,它在 compass 完成后就准备好了。

如何在指南针完成后立即触发 livereload,但允许其他任务继续执行?我尝试了下面的配置,它在 CSS 更改时触发 imagemin,但它似乎不起作用。由于某种原因,这个 imagemin 根本不会触发。你不能有多个任务看同一个文件吗?

谢谢。

0 投票
1 回答
1500 浏览

node.js - 在 grunt 中,如果我正在查看多个文件和两个或更多更改,我怎样才能只在更改的文件上运行任务?

我有一个initConfig带有这段代码的:

这应该只编译已更改的 .coffee 文件。这工作很好。但我只是注意到,如果我一次修改多个,它将​​输出:

如您所见,我更改了两个文件,但它仅在“FILE2.js”上运行任务。我怎样才能避免这种情况?我希望它coffee:glob_to_multiple在 FILE1 和 FILE2 上运行,而不仅仅是其中一个。


注意:我很确定文档解释了如何执行此操作:

如果您同时保存多个文件,您可能会选择更强大的方法:

根据该文档,我对代码进行了以下更改:

事情完全按照我想要的方式进行。 但我不确定这是如何工作的。有人可以向我解释吗?

0 投票
1 回答
1706 浏览

javascript - 使用 grunt 重新启动 phantomjs 进程

每次更改代码(例如 jshint)时,我都会使用 grunt 来完成一些任务,并且每次更改时我都想重新加载 phantomJs 进程。

我发现的第一种方法是第一次使用 grunt.util.spawn 运行 phantomJs。

然后,每次 watch 重新启动时,另一个任务使用 grunt.util.spawn 杀死 phantomJs 进程,这当然非常难看。

有没有更好的方法呢?问题是 phantomJs 进程没有终止,因为我将它用作 Web 服务器来为带有 JSON 的 REST API 提供服务。

每当手表启动时,我可以有一个咕噜声回调或其他东西,以便我可以在重新运行任务以创建新任务之前关闭我以前的 phantomJs 进程吗?

我使用 grunt.event 制作了一个处理程序,但我看不到如何访问 phantomjs 进程以杀死它。

0 投票
1 回答
11196 浏览

node.js - Gruntjs:致命错误:getaddrinfo ENOTFOUND

我可能应该首先指出我是没有经验的用户,我的问题是除了空字符串('')、'0.0.0.0'和'localhost'之外, 'hostname'属性不能分配任何值。我得到:致命错误:getaddrinfo ENOTFOUND。我究竟做错了什么?

如果做对了,我可以更改我通常在地址栏中输入的地址,所以我可以输入 'example.com' 或类似的东西来代替“localhost”。

正如我上面提到的,我为它分配了不同的值,但其中只有三个有效。那么为什么这个'*'不起作用。

这是我的Gruntfile.js

在 Ubuntu 12.04 64 位上工作

NodeJs 0.10.17

npm 1.3.8

GruntJs 0.4.1

grunt-contrib-connect 0.3.0

0 投票
1 回答
1846 浏览

gruntjs - 使用 grunt-contrib-watch 时 grunt-autoprefixer 无限循环

我只是在学习Grunt。我将使用 compass 来生成垂直节奏和图像精灵,并使用 autoprefixer 来为 css3 样式添加前缀。

这是我的Gruntfile.js

但每当我跑步

除了 grunt-contrib-watch 无休止地调用 grunt-autoprefixer 之外,一切都按预期工作。

我刚开始学习Grunt。这可能是我的Gruntfile.js上的错误配置

我希望你能在这里帮助我。

0 投票
7 回答
4204 浏览

gruntjs - Grunt - 如何查看和同步文件的删除

我是 Grunt 的新用户。目前我有一个static_src/img包含图像源文件(.psd)和图像文件(.png、.jpg 等)的文件夹。此文件夹不公开。相反,我想将仅图像文件的更改同步到另一个公用文件夹static/img

问题是 - 当我在 中添加/更改图像文件时效果很好static_src/img,但我不知道如何在删除文件时同步更改。grunt-contrib-watch 可以检测到 中的删除static_src/img,但是我不知道如何删除static/img. 我尝试了 grunt-contrib-clean,但它似乎对我不起作用,也许我没有正确使用它。

我的 Gruntfile.js 是:

那么如何删除 grunt-contrib-watch 任务中的特定文件呢?谢谢你的帮助!

0 投票
1 回答
2376 浏览

gruntjs - 不同的 grunt watch 任务和触发事件

我尝试使用两个监视任务,一个用于 html 和 css,它(应该)只触发重新加载(也不会发生),另一个由 .js 文件触发。在一个事件中,我尝试仅对更改的文件进行 uglify,然后连接所有 js 文件。它不起作用,无论哪个文件更改,所有 js 文件始终都是 uglifies。作为 Grunt 的新手,有人可以花一两分钟时间吗?

0 投票
2 回答
3522 浏览

node.js - Grunt watch:只编译一个文件而不是全部

我有 grunt setup 将我所有的咖啡文件编译成 javascript 并使用 dynamic_mappings 维护所有文件夹结构,效果很好。

然后我想做的是使用 watch 编译任何更改的咖啡文件并仍然保持文件夹结构。这可以将上述任务与此监视任务一起使用:

问题是,当一个文件更改时,它会将整个咖啡目录再次编译为 Javascript,如果它只编译更改为 Javascript 的单个咖啡文件,那就太好了。这在 Grunt 中是否自然可行,或者这是一个自定义功能。这里的关键是它必须维护文件夹结构,否则很容易。

我们有自定义的监视脚本在工作,我正试图在 Grunt 上出售它们,但需要这个功能来做到这一点。