问题标签 [gulp-plugin]

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

javascript - Gulp-coffee 删除不存在的文件

我正在使用 gulp-coffee 将我的咖啡文件编译为 js,没什么特别的。

我很难弄清楚如何删除源文件夹js中不再存在的 js 文件(在 dest 目录中) 。coffee

我很确定这与 gulp-coffee 没有直接关系,但我有点无能为力,而且我对 gulp 也不是很精通。

我的文件结构

我的吞咽任务

0 投票
1 回答
2274 浏览

gulp - What's the difference between using autoprefixer within gulp-postcss or outside of it?

I'm using Gulp and have used the Gulp Autoprefixer standalone such as:

...but then I see the Gulp Postcss plugin which seems to wrap the usage of a non-gulp autoprefixer such as:

What is the difference?

0 投票
0 回答
59 浏览

gulp - Gulp 插件日志输出仅针对单个文件写入

我第一次尝试编写一个 gulp 插件。该插件稍后应该验证项目中所有 css 和 js 文件的一些样式指南要求。

为了在测试时正确调试插件,我想使用 gutil.log() 进行打印输出。首先,我创建了一个 gulp 插件,它简单地输出测试文件的路径。

但是,gulp 输出中只打印了一个文件名。调试显示,所有正确的文件都使用 gulp.src() 列出,但始终只有单个文件的日志输出。

然后我在这里找到了以下内容:在 Gulp 插件中处理多个文件

我尝试使用 gulp-foreach 和以下代码:

但结果还是一样,只有一个日志条目。我觉得我在这里遗漏了一些非常明显的东西......

0 投票
1 回答
256 浏览

javascript - 为什么vinyl.isVinyl() 对gulp 发出的乙烯基文件返回false?

我正在学习 gulp 源代码并尝试编写一个 gulp 插件。

现在我对某事感到困惑。

这是我的插件代码如下:

vinyl这是创建文件的 gulp 源代码的一部分:

https://github.com/gulpjs/vinyl-fs/blob/master/lib/src/wrap-with-vinyl-file.js

我的困惑:

transformFunction注册者though2.obj()接收一个file应该是vinyl文件的对象。

为什么vinyl.isVinyl()返回false

为什么file对象没有_isVinyl属性?

0 投票
2 回答
714 浏览

node.js - gulp - 用字符串包装插件(使用 through2)输出

我想知道如何准确地操作我的 Gulp 插件的输出,例如,无论有多少文件传递给插件,它都会用字符串包装输出。目前我不知道最后一个文件何时完成。

下面的超级简化示例将迭代 3 个文件,并将创建一个名为的新文件output.js,其中将包含三倍的字符串xxx(xxxxxxxxx)。

我希望插件本身包装内容,因此输出将是:+xxxxxxxxx+.

我该怎么做?谢谢!

吞吐文件

最基本的 gulp 插件(index.js):

我知道文件目前只是简单地返回修改,但我不明白的是如何附加文本并返回我想要的连接结果,同时保持它符合 Gulp 工作标准。


“真正的”插件实际上应该用以下方式包装文件结果:

whereFILES_CONTENT实际上是所有文件的串联字符串:

0 投票
1 回答
579 浏览

javascript - 自定义 Gulp.js 插件:TypeError "Path must be a string. Received undefined"

TypeError: Path must be a string尽管我无法将建议的解决方案应用于我的案例,但我在 StackOverflow 上找到了几个线程。

我正在尝试构建一个连接到(付费)javascriptobfuscator.com 服务的 Gulp 插件,并使用他们的POSTAPI 来混淆我的 JS。

Gulp 任务如下所示:

jsobfuscator.js文件包含以下代码:

当我运行 gulp 任务时,我显然从 javascriptobfuscator 代码中得到了正确的响应(如下所示),但是在我将文件传递到目的地的部分有问题,因为我得到了:

诚然,我不是 Gulp 插件的专家——我正在尝试构建一个功能供我自己使用。看起来我已经很接近了,但我已经被困在这个死胡同有一段时间了,我需要更有经验的人的帮助。

提前致谢


半途而废的更新

修改response.on('end')回调如下,我终于可以写文件了:

不过,我必须注释掉 final callback(),否则我会遇到指向未定义response.setEncoding('utf8');行的错误。response

现在的问题是,在某种程度上,任务似乎永远不会终止。控制台说Starting 'jso'...,文件已写入,控制台返回,但没有Finished 'jso' after nn ms,最糟糕的是,之后我完全无法链接更多 gulp 任务,所以如果我:

我唯一得到的就是jso1开始,显然在工作,但从未完成;jso2从不跑。


0 投票
0 回答
173 浏览

typescript - Gulp - 将所有文件列为单独的任务

我想列出 partucar 文件夹中的所有 .ts 文件,并使用 gulp 将它们作为单个任务呈现。

所以,我有一个包含这些文件的文件夹:

现在我正在使用这个命令来构建所有这些文件并将它们发送到特定的目的地:

所以这会获取所有.ts文件./src并将它们添加到./dist编译后的文件夹中.js files

我想做的是:

  • 列出我的任务运行器中的所有 .ts 文件
  • 右键单击特定任务(文件)
  • 仅为该特定 ts 文件运行 build:ts
  • 编译并将该特定文件添加到 ./dist
0 投票
0 回答
281 浏览

angular - 使用 Gulp+Karma+Jasmine+Angular 4 时在覆盖率报告中获取空值

我收到空的覆盖率报告

请找到我的 gulpfile.js

这样做之后,使用命令“ gulp coverage ”运行时我没有收到任何错误

在代码中添加覆盖任务之前它正在运行所有测试用例,只有测试任务。但是在添加覆盖任务之后,它甚至没有运行测试用例,所以得到空的覆盖报告。但在报告中我得到空数据 覆盖报告

请让我知道覆盖任务有什么问题。提前致谢。

0 投票
2 回答
80 浏览

stream - 如何在 Gulp 管道中并行运行两个单独的插件?

我正在尝试设置一个 Gulp 任务,通过使用和插件将.ttf字体转换为 webfont 格式。分别将源字体转换为和。gulp-ttf2woffgulp-ttf2woff2.woff.woff2

我提出了这两个独立的功能,每个插件一个:

是否可以将它们浓缩在一个函数中,让我们称它为同时function fonts(done) {}处理两个插件?

基本上,我想要这样的东西

两者都ttf2woff()接收ttf2woff2()输出src并将自己处理的文件提供给dest.

0 投票
1 回答
94 浏览

javascript - 如何在反应中自动检查变量是否存在?

我有通过道具呈现变量的反应组件。

主.jsx

个人.jsx

相同的文件以不同的样式重复出现在多个外观中。

结构看起来像。

这在未来可能会增加。我想检查/自动化脚本以检查name and idevary main.js中的退出city and country并存在于每个 personal.jsx 文件中