问题标签 [gulp]

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

node.js - 链式顺序任务

我有 3 项要处理的任务,当这 3 项任务完成后,我想执行以下操作:

  1. 将三个文件连接在一起
  2. 丑化
  3. 写入磁盘

对于Grunt这一切,我有一个漫长的过程。这是我尝试过的Gulp

这可行,但我只想流式传输输出,而不是只写出 3 个中间文件然后连接它们。

所以我然后尝试:

那么我build将是:

这不起作用。

所以我尝试了Q

我猜这可行,但回调中没有数据then

我迷路了。实现这一目标的最佳方法是什么?

0 投票
5 回答
42869 浏览

javascript - How to save a stream into multiple destinations with Gulp.js?

Piping to multiple destinations when file.contents is a stream is not currently supported. What is a workaround for this problem?

0 投票
1 回答
793 浏览

node.js - gulp-buster 永远不会“完成”

nodejs gulp用来处理和最小化我的less文件以及我正在使用的缓存破坏gulp-buster,但是,当我添加gulp-buster管道时,任务永远不会完成。

这是我的(一部分)Gulpfile.js

当我运行该任务时,我得到以下响应:

当我在没有我的情况下运行任务时.pipe(watch(function(...

怎么还没完结gulp-buster?我究竟做错了什么?

0 投票
17 回答
121287 浏览

javascript - 使用 Gulp 按顺序连接脚本

比如说,您正在 Backbone 或其他任何东西上构建一个项目,并且您需要按特定顺序加载脚本,例如underscore.js需要在backbone.js.

我如何让它连接脚本以使它们井井有条?

我在 my 中有正确的脚本顺序source/index.html,但是由于文件是按字母顺序组织的,gulp 将underscore.js在之后连接backbone.js,并且 my 中的脚本顺序source/index.html无关紧要,它会查看目录中的文件。

那么有人对此有想法吗?

我最好的想法是用 , 重命名供应商脚本,1以给它们正确的顺序,但我不确定我是否喜欢这个。23

随着我了解更多,我发现 Browserify 是一个很好的解决方案,起初可能会很痛苦,但它很棒。

0 投票
2 回答
4279 浏览

gulp - 使用无 Gulp 维护文件夹结构启动 Gulp

我今天开始查看 gulp.js 来编译我的 less 文件等。

我已经启动并运行了一项任务,但编译后的文件都放在同一个文件夹中 - 不维护源层次结构。

有没有办法确保输出保持原始文件结构?

我是 gulp 的新手,所以可能没有正确执行此操作。

这是我的 gulp 文件(与 Less 相关的部分):

我想将源主题文件夹中的 Less 文件放在目标主题文件夹中。我缺少哪些选项?

我必须将这些作为单独的任务运行吗?

谢谢

更新: 我查看了建议的帖子并将路径更改为:

我还将我的目录变量更改为:

但它不会产生themes我期望的文件夹。

0 投票
1 回答
272 浏览

ios - LiveReload 无法重新加载 iOS,但可以在不同的计算机上运行,​​都在同一个 WiFi 上

在开发网站时,我通过Gulp使用LiveReload(和 MAMP 作为网络服务器)来重新加载我的浏览器。我使用 Gulp 启动 LiveReload 服务器,并插入对 LiveReload js 文件的引用

其中 192.168.1.102 是我当前 WiFi 上的本地 IP。

这在我的本地机器上完美运行,重新加载 Safari 和 Chrome。

我在同一个网络上也有一台 Ubuntu 机器,我将本地网络服务器添加到主机文件中192.168.1.102 my.project.dev- 这也很有效。

但我也想在我的 iOS 设备上自动刷新我的浏览器。我目前有一部带 Safari 的 iPhone。由于我无法在 iPhone 上编辑 hosts 文件,因此我在本地机器上使用SquidMan设置了代理。将代理添加到 iPhone 网络配置后,我可以my.project.dev正常访问我的站点。但是,这里的问题是,LiveReload 不会在 iPhone 上被触发。即使http://192.168.1.102:35729/livereload.js当我尝试通过 url 直接访问 iPhone 时,iPhone 也可以访问它。

我在这里想念什么?为什么 iPhone 不会像其他设备一样刷新?可能是代理在做一些可疑的事情吗?

0 投票
2 回答
12768 浏览

angularjs - Gulp ngmin + uglify 无法正常工作

我有以下吞咽任务:

问题是连接的文件也是 ngmin() 的输出,工作正常,但是在丑化代码之后,有些东西坏了,我得到以下错误

没有具体的指示符从哪里开始调试。

堆栈跟踪:

0 投票
1 回答
3308 浏览

coffeescript - 如何将参数传递给 gulp 任务回调?

我正在尝试做两个任务,一个监视和构建任务。监视任务调用我的“咖啡”任务,它将我的.coffee文件编译成 javascript。构建任务应该基本上做同样的事情,除了我想将一个布尔值解析到函数中,这样我就可以编译包括源映射在内的代码。

有人可以解决我的问题吗?我在原则上做错了什么吗?提前致谢。

0 投票
1 回答
2006 浏览

node.js - 如何使用 gulp 任务解压缩本地文件

我正在寻找一种使用 gulp 任务提取 JAR 文件 (zip) 的方法,但无法将我的头脑围绕连接流和 unzip.Extract()。

这是我目前得到的 Gulp 任务。它不会出错,也不会真正提取我的 JAR。

谢谢您的帮助。

编辑:忘了提到我正在使用的解压缩插件是https://www.npmjs.org/package/unzip,导入:

这可能不是必需的,但我无法找出“正确”的方法来做到这一点。

0 投票
6 回答
45999 浏览

javascript - 使用 gulp 将 bootstrap.less 文件编译成主 bootstrap.css?

我真的很喜欢 gulpjs,它是我选择的任务管理器,但我有点希望几个月前我了解任务管理器并进入 gruntjs,主要是为了获得支持。对于 gulpjs 来说,很难找到有关特定事物的信息。

我的问题是如何设置我的gulpfile.js,以便我可以对 bootstrap.less 文件进行编辑,特别是variables.less. 我确实安装了“ gulp-less ”,并像下面那样实现了它。

运行后出现以下错误gulp less

events.js:72 throw er; // Unhandled 'error' event ^
Error: EEXIST, mkdir 'C:\wamp\www\myproj\source\css\bootstrap.css'

我认为我的 sass 任务代码设置不正确,我是一个 gulp noobie,但我尝试了多种组合,是的,我确实使用了“ gulp-less ”文档中的示例,我使用的代码是最简洁明了的削减我想要完成的代码。

编辑:我在谷歌上找到了一些很好的关键字我发现了一些最近的帖子,这是一个使用 Gulp-less 维护文件夹结构的启动 Gulp似乎没有一个好的答案,我必须阅读。

附加:我忘记了使用文档中的代码时,出现 alerts.less 错误

错误

stream.js:94
throw er; // Unhandled stream error in pipe.
^
[gulp] Error in plugin 'gulp-less': variable @alert-padding is undefined in file C:\wamp\www\myproj\source\less\alerts.less line no. 10

即使我删除了该行,它仍然会不断发现新的错误。

编辑:文档确实说,以下但对我没有意义,是说应该有错误,如果这样令人困惑,我会尝试按照他们提供的指南进行操作。

错误处理

默认情况下,gulp 任务将失败,并且当发生错误时所有流都将停止。要更改此行为,请查看此处的错误处理文档