问题标签 [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 回答
19905 浏览

node.js - 在 gulp.watch 中过滤文件的最佳方法?

我想用 gulp.js 观看所有目录中的 .min.ext文件。过滤掉这些的最好方法是什么?

例子:

编辑:如果没有外部软件包就无法完成,哪一个是最有信誉的?

0 投票
2 回答
7595 浏览

gulp - 多个任务的条件 gulp concat

我有一个名为 build 的 gulp 任务,它使用子任务将源代码的各个部分移动到构建文件夹:

然后我想在 --env=prod 时添加一些额外的步骤,我用 gulp-if 做了:

这工作正常。我要做的最后一件事是 gulp-concat 来自这些子任务的所有 js 文件。我认为我可以使用 gulpif 从每个任务返回一个流,而不是去 gulp.dest,但我仍然需要以某种方式有条件地运行一个任务来组合这些流和 concat。

有一个更好的方法吗?

0 投票
12 回答
12406 浏览

javascript - Gulp.js,保存文件时监视任务运行两次

鉴于我的 gulpfile.js 中的以下代码,每次我保存或更改文件时,任务都会运行两次而不是一次,这是为什么呢?我只想让它运行一次。

我对 grunt 和名为 grunt-contrib-watch 的插件也有同样的体验。

0 投票
1 回答
1518 浏览

javascript - GULP 显示“拒绝访问”

我是 Gulp 令人难以置信的世界的新手。我创建了一个 gulpfile,它成功地读取/写入/编译 sass/css/js/html 等。但是当我查看该站点时,localhost:1337我得到的只是加载时“访问被拒绝”和“找不到文件”localhost:1337/index.html

下面是 gulp 文件(减去依赖项......)

对此的任何帮助将不胜感激!:)

更新:我相信当我以 localhost:1337/app/index.html 和 localhost:1337/dist/index 导航到 localhost:1337/index.html 时,我缺少一些配置选项让我欣喜若狂地允许文件加载.html 在浏览器中加载良好。

0 投票
1 回答
4950 浏览

javascript - gulp.js 去除输出文件的相对路径

我设置了一个 gulp.js 配置以在保存时自动编译我的 SASS 和 CoffeeScript。它可以工作,除了相对路径完全丢失,所有文件都输出到一个平面目录中。我想在编译最终的 CSS 和 JS 文件时保留 myapp/assets/sass和目录的子目录结构。app/assets/coffee这是我的 gulpfile:

0 投票
1 回答
8910 浏览

handlebars.js - 无需将模板写入磁盘即可使用 Handlebars、Gulp 和 Browserify

希望在 gulpjs 构建期间“浏览”的主干视图文件中执行以下操作:

问题似乎是这个 Handlebars 文件没有被编译,因此不是 JS 文件。如果我首先将模板编译到 tmp 目录,则构建工作:

有了流式构建的承诺并且不再有 tmp 文件,我希望在 Browserify、Gulp 或两者方面更有经验的人可以为我指明正确的方向。具体来说,目标是在 gulp 任务期间编译模板,同时仍然使用引用原始模板文件的 require 语句,从而避免使用临时文件。可能的?

0 投票
2 回答
937 浏览

javascript - Gulp 退出太早

有简单的 gulpfile 但它没有按预期执行:

仅记录“之前”,但没有“之后”。为什么?

0 投票
1 回答
2412 浏览

javascript - Gulp“打开”任务未正确执行

下面是我的 gulpfile 的片段,基本上我遇到的问题是,无论何时从 CLI 执行“gulp”,open 并不总是打开一个新的浏览器窗口。例如,如果我删除生成的“dist”文件夹并执行“gulp”,那么“dist”将使用 .html 文件和资产结构搭建支架,但它无法在我的浏览器窗口中打开该站点...

如果我然后取消当前正在运行的 gulp 任务并再次从 CLI 执行它(使用“dist”文件夹),那么 gulp 将在新的浏览器窗口中加载该站点。

我如何设置 open 以便它每次都执行?我认为它以某种方式与“清洁”任务发生冲突,但我不太确定。

任何帮助,将不胜感激。

清洁任务:

打开任务:

默认任务:

*Config.start_page 指向 dist/index.html

0 投票
2 回答
4230 浏览

livereload - 当使用 gulp 更改 css 文件时,Livereload 不会更新我的浏览器

所以我使用gulp.js来管理和自动化一些任务,我有一个特定的任务styles将我的 scss 文件编译成 css 和另一个使用gulp -connect插件运行服务器,该插件提供 livereload 集成。

我还有一个任务watch是观察我的变化并触发 livereload。

这并不总是有效,实际上它的工作次数少于次数。我真的不知道为什么。我的 .coffee 文件具有相同的逻辑,并且对它们非常有效。但不适用于我的 css 文件。

下面是另一个相关的任务。

0 投票
1 回答
828 浏览

javascript - 输入文件的目录结构在输出时变平

我的 app/assets/sass/ 目录中有一个分层结构,我试图在其中的 CSS 输出文件中进行镜像public/css/,但是我的 sass 目录和子目录中的所有 *.scss 文件都被放入根public/css/文件夹中。

这是我的 gulpfile:当我注释掉之间的行gulp.src(sassDir ...).pipe(gulp.dest('public/css'));维护目录结构时,sass 没有被编译。取消注释该.pipe(sass(...))行会重现该问题。