问题标签 [gulp-notify]

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 回答
6592 浏览

gulp - 所有任务完成后如何在 gulp 中处理通知?

我正在进入 Gulp 的许多流中,并且遇到了一个令人困惑的主题。我想在所有任务实际完成时发布通知。我看到任务已执行,但默认情况下是异步运行的。

如果我想在每个步骤完成后显示一条通知......并且在所有步骤完成后显示通知怎么办?

在 gulp 中更好地控制任务时间的最佳方法是什么?

目前,我正在使用 gulp-notify 来显示通知。

更新 X 2

我真的没有任何错误,但想更好地了解这里的操作顺序以及如何触发我自己的所有任务何时完成的通知。这是示例。

在控制台中,通知现在已正确计时,但是在执行结束时,就在 xx ms 后完成“mainTask”之前,最终的“所有任务完成”消息会触发 [n-1] 次,其中 n 是计数的子任务。

是什么导致这个最终通知被触发这么多次,如何抑制它?

0 投票
1 回答
4752 浏览

javascript - 在不使用 .pipe() 的情况下调用 gulp-notify

在我gulpfile.js的任务中,我有一个调用另外两个任务的任务。当之前的任务已经运行时,应该触发一个通知。

有没有办法在不gulp.src('gulpfile.js').pipe(先调用的情况下触发通知?虽然不是一个真正的问题,但这种方法对我来说是不必要的。我的问题完全有可能是由于对 gulp 的理解不足造成的。因此,请随时指出我的任何误解。

0 投票
3 回答
3087 浏览

javascript - 如何在管道到 gulp browserify 时收到错误通知?

我正在使用browserify,所以我可以在我的前端代码中使用 npm 模块,并gulp来完成我的构建任务。这工作正常:

但是,如果我的 JS 中有语法错误,我希望通过 OS X 通知收到错误通知。我已经看到了这个类似的问题,并修改了我的代码以在.on('error'...)后面添加一个.browserify()

但是,当我的 JS 损坏时,这不会通知。在里面添加一个 console.log()on('error',...)也不会记录。我怀疑是因为这个问题不涉及使用 gulp 管道。

如何在管道到 gulp browserify 时收到错误通知?

0 投票
1 回答
2895 浏览

gulp - Gulp 文件运行任务并通知两次

我刚开始第一次使用 gulp,需要所有我想使用的插件,并为 sass 编译编写了第一个任务。它似乎有效,但有两个问题,首先当我在命令行上键入 gulp 时,它似乎需要 3 或 4 秒才能启动,这似乎比 grunt 慢(我开始使用 gulp 是因为我知道它更快)。这是正常的吗?

但主要问题是我有一个默认任务,它调用 sass 任务。命令行输出似乎表明两者都在运行,这意味着 sass 被编译了两次。它还输出我的单个 gulp-notify 通知两次,这似乎不正确。

这是命令行输出...

这是我完整的 gulp 文件...

有人知道这里发生了什么吗?我是否误解了 Gulp 任务的工作原理?

0 投票
1 回答
3392 浏览

javascript - 当 gulp-jshint 失败时,无法使 gulp-notify 弹出错误消息

因此,如果整天都在研究我们新的 FE 工作流程,主要思想是通过观察者运行一些任务,我们将拥有我们的 IDE 和一个窗口,每次发生变化时都会刷新浏览器(scss、js、html、 ETC)。

因此,如果一切顺利,我们将什么也看不到:浏览器将重新加载,我们将继续工作。

但是,我们想使用 gulp notify 来处理错误,所以如果我们有什么错误,就会弹出通知程序,此时您可以检查控制台并查看错误。

失败时的 sass 任务示例:

失败时的 sass 任务示例

对于我们的样式任务,一切正常,但我无法为 JS 文件完成此操作。

主要是,我不能让 gulp-jshint 按我的意愿工作。

这将是这样的:你保存你的 js 文件,如果失败,弹出窗口出现,当你看到这个时,你进入控制台,你会看到 jshint-stylish 的输出。

有人可以帮助我吗?

这是我的(非工作)解决方案:

显然,我的概念有问题,所以,有人可以请我走正确的方向吗?

请注意,我只想一直发出相同的消息“JS提示失败”

然后,控制台(感谢 jshint-stylish)将为我们提供更多信息。

此外,这将在观察者身上。在 JS 提示通过后,将执行更多任务,例如 borwserify,因此如果它停止,“等待”直到我完成修复它然后继续执行,这一点很重要。

谢谢 !

PS,我正在使用:

吞咽 3.8.10 吞咽-jshint 1.8.6 吞咽-通知 2.0.1

通过 OSX 10.9.4

0 投票
1 回答
321 浏览

error-handling - 使用 gulp-ruby-sass 1.0.0-alpha、gulp-notify 和 browser-sync 处理错误

我一直在使用 `gulp-ruby-sass@1.0.0-alpha' 因为 < 1.0 不能很好地与 Sass >= 3.4 配合使用根据文档:

gulp-ruby-sass 会像 gulp 插件一样抛出错误,但会流式传输错误文件,以便您可以在浏览器中查看错误。

我使用gulp-notify这段代码来处理错误,它给我一个弹出通知,让我知道出了点问题。

这适用于我的其他任务(在我的“脚本”任务中,我需要指定gulp-jshint失败报告者)。但在我的“样式”任务中,错误消息正在流式传输到控制台和浏览器,而不是弹出通知。

它可以按原样工作,但是当使用浏览器同步进行 css 样式注入时,可能会错过错误消息。有时我不在呈现错误消息的文档顶部工作。

理想情况下,我希望收到可以提示我检查错误的通知。有谁知道为什么我不能用 gulp-notify 创建消息?

0 投票
1 回答
1192 浏览

gulp - Gulp:Plumber 的错误消息和通知

在此示例中,它声明您可以使用 Gulp-Plumber 和 Gulp-Notify 在每次出现错误时显示消息和声音。Gulp-Plumber 将确保 Gulp watch 将继续运行。

但是,当我尝试它时,我不断收到此错误消息,这导致 Gulp 停止:

这是我的代码:

我的代码和示例之间的唯一区别是我将 onError 作为全局函数移动,因此它可以在脚本和样式任务中使用。但是,即使我将其移回样式函数中,也会出现相同的错误消息。

(我发布的代码是缩写的,完整的代码可以在这里找到)

另外,有没有办法隐藏成功的通知消息,所以我只听到声音?谢谢!

0 投票
0 回答
509 浏览

javascript - Gulp 任务没有回报

是否有可能有一个没有回报的 Gulp 任务?

我正在尝试创建一个简单的构建任务来通知用户成功,但我之前编写的所有其他任务都会返回一些东西并使用管道来处理相关的操作。

正如您从下面的代码中看到的那样,我有一系列任务,我想在两个不同的构建过程中执行 -dev并且production- 在两者结束时,我有一个简单的process:build任务,它会触发重新加载任务并使用gulp-notify.

当使用gulp以下代码在命令行上运行时,实际上没有任何中断,并且构建过程进行得很好,但process:build任务本身似乎没有触发。

0 投票
1 回答
1121 浏览

error-handling - gulp-notify - 获取文件名,而不是整个路径,有错误

我正在使用gulp-notifyandgulp-plumber来捕获任何错误gulp-sass并在它在 gulp 中引发错误并停止整个构建过程之前通知我。但是,显示的错误gulp-notify并不是特别有用...它包含错误文件的整个路径;我很可能知道文件的路径是什么,所以我只需要知道文件名和行号(以及列号作为附加但不是必需的奖励),以及实际的错误消息。这是我的代码:

还有更多(比如gulp-watch, browsersync, 一些 JS 的东西),但我认为以上就是解决问题所需的全部内容。如果没有,请告诉我!

所以我的问题是,如何修改错误消息以仅显示文件名、行号和错误消息(例如 _header.scss:17 - 无效的属性名称)?目前我正在使用error.message,但我找不到更多可以用来获取我想要显示的东西的标签。

谢谢!

0 投票
1 回答
230 浏览

growl - 如何使用 gulp-notify-growl?

我有远程服务器(192.168.0.104)并使用win7在笔记本电脑窗口计算机(192.168.0.100)上工作。我为窗户安装咆哮。

服务器

笔记本电脑

点击安全

终端中显示“编译错误”。

但通知不会出现在窗口中。

如何获取通知?