问题标签 [gulp-rename]

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

javascript - gulp 重命名多个文件

我有一个 gulp 脚本来操作主 html 文件并将其重命名为基于数组的多个名称。这是脚本。

但是只生成了name2.html。谁能告诉我我的代码有什么问题。

0 投票
1 回答
404 浏览

path - gulp-exec : 如何根据源文件在命令中注入 dest 文件

我编写了一个 gulp 任务来生成基于以 markdown 格式编写的源文件的 pdf 文件(使用 gulp-exec 插件和一个名为 Pandoc 的命令行工具)。

我的任务如下所示:

它完美地工作,除了 dest 文件具有以下格式:“filename.md.pdf”(如果源文件是“filename.md”)。那是因为我在 exec 命令中使用了 <%= file.relative %> ,它实际上存储了源文件的名称(“filename.md”)。

是否可以像这样编写 dest 文件:“filename.pdf”?我尝试使用 <%= file.basename %> 而不是 <%= file.relative %> 但它不起作用。当然,我可以创建另一个任务并重写所有文件,但我想找到一种更优雅的方式。任何想法 ?

谢谢

0 投票
2 回答
799 浏览

javascript - 在一个管道中定义的 gulp var 在另一个管道中未定义

我正在使用 gulp 来处理网站的页面,其中一些页面是 php 文件。问题是,在所有页面都通过模板引擎运行之后,它们具有.html文件扩展名。我正在向文件添加一个属性,指定它是否应该是除 html 之外的文件,然后重命名文件以匹配。但是,出于某种原因,gulp-rename 一直说我用来存储扩展名的变量是undefined.

gulpfile.js 中对应的任务:

当我运行上面的错误时Unsupported renaming parameter type supplied

我也试过它在同一行有选项 obj rename()ext只存储文件扩展名,例如:.pipe(rename({extname: ext}))这导致文件未定义添加为扩展名(而不是phpfile.php下面的md文件将被命名phpfileundefined

phpfile.md 中的 yaml

包.json

0 投票
1 回答
427 浏览

gulp - Triggering separate gulp tasks for subfolders in different paths

I am using Gulp to store multiple SVG files into SVG storages which are later reused in order to maximize performance. However, I am now using a rather interesting folder structure where the paths contain interchangeable fixed and dynamic parts.

Let me illustrate. Here is the folder structure I am using. The app/images/products folder contains folders named productA, productB etc. which again contain a subfolder called color-sprites full of SVG files ready to get combined into a single file and stored in build/images/products/{product name}/color-sprites.svg.

Here is a simplified version of the code I am trying to use to accomplish what I need (take note that rename is an instance of gulp-rename).

The problem is that I am not exactly sure how to access current stream parameters in order to construct a target with gulp-rename because running the gulpfile.js like this results in taking the first parent element of the path before * or ** which again results in creating a file called products.svg in build/images/. I've seen a couple of examples which use path to access the basename, relative path etc. but I am not sure how to use it in the context of gulp streams.

0 投票
1 回答
460 浏览

node.js - Gulp Rename 非法操作

我的 gulp 文件如下所示:

[11:59:18] 错误:EISDIR:对目录进行非法操作,打开“...基目录...\aurelia_project\aurelia.json”

基本上,我有一个目录aurelia.login.json,我想将其复制并重命名到aurelia.json同一目录中。

0 投票
2 回答
1322 浏览

javascript - Gulp-rename:获取原始文件路径

我正在使用gulp-rename重命名文件。
我想从几个目录中获取文件并将它们放入带有一些后缀的输出目录中。
此后缀取决于原始目录名称:

['/dir/a/style.css', '/dir/b/style.css', '/dir/c/style.css']
=>
['/output/style_a.css', '/output/style_b.css', '/output/style_c.css']

我做这样的事情:

方法rename为每个文件迭代回调。
此回调将对象path作为参数,它包含dirname属性。
path.dirname具有价值'.',而不是像'/dir/a/style.css'.

所以,我的问题是如何在rename回调中获取初始文件路径?

0 投票
1 回答
2001 浏览

html - 用 Gulp 任务替换 CSS url

我尝试使用 Gulp 替换 index.html 中 CSS 文件的路径。问题是我有多个主题名称不同的项目,并且分发包中源文件的路径不同

索引.html

在我的分发包中,主题被复制到src\projects\project\app\style\themes下

dist/index.html

这是使用 gulp-find 在 index.html 中查找 url 的尝试:

那行得通,我在目标文件中得到了值。但是是否可以将此值与 gulp-replace 一起使用来更改 HTML 文件中的值?

我也尝试过类似的东西:

但 index.html 中的值是:

0 投票
0 回答
1310 浏览

gulp - 使用 gulp-clean-css 和 gulp-rename 以 .min.css 前缀缩小和重命名,但 gulp 会删除 style.min.css 文件

所以,下面是我的整个 gulp 文件。我的样式/src 文件夹中有一个 style.css,我希望 gulp 在我的样式/dist 文件夹中输出一个 style.min.css 文件。gulp-clean-css 生成缩小文件,gulp-rename 添加 .min 后缀。

当我有一个空的 dist 文件夹并运行 gulp 时,它成功地在 dist 中创建了缩小的 css 文件,但随后对 style.css 的每次编辑(由观察者监视)都会导致 min 文件被擦除,并且此后永远不会正确填充。

为了进一步增加混乱,我将 Atom 用于我的 IDE,当我在 Atom 中进行编辑时,gulp 将清除 .min 文件以清除任何不是初始编辑(创建 .min 文件)的编辑,但是如果我在 CLI 上使用 nano 进行所有编辑,则 .min 文件每次都会正确填充。也许我应该找一个新的IDE?

0 投票
0 回答
473 浏览

gulp - Gulp dest 在同一级别 src

我正在尝试做一个 gulp 任务来同时编译很多模块。我的路径是...

我需要完成 wirh gulp 是:

我的 src 看起来像这样:Gulp.src(./packages/*/src/**/*.js)

这是获取正确的文件,但我无法将 Gulp.dest() 放到正确的位置!

编辑

经过更多搜索后,我使用 gulp-folders 和一个简单的地图来完成这项工作。

0 投票
1 回答
366 浏览

module - 模块化应用程序的动态 gulp.dest 路径

我正在尝试为模块化应用程序设置 gulp。在我的公用文件夹中,我有模块,每个模块都有自己的src/sassdist/css文件夹。我想将 sass 文件转换并传输src/sass到它们各自的dist/css文件夹。src/sass在like下也可能有更多文件夹src/sass/adminsrc/sass/user其中包含 .scss。这些文件夹结构也应该dist/css像这样复制:dist/css/admindist/css/user. 这些附加文件夹取决于模块。

问题是可以删除和添加模块,所以我不想直接在gulp.dest路径中引用模块名称。我需要它是动态的,具体取决于gulp.src路径。

假设我有一个如下所示的文件夹结构。

这是我尝试过的 gulp 任务。

1.使用path.join

2.使用重命名

我不确定要写什么而不是“???”。我已经尝试了多种变体'../../../dist/css',这一切似乎都在尝试将我的 css 文件传输到类似的东西,public/Modules/Module1/dist/css/Module1/src/sass或者dist/public/...到目前为止没有任何效果。

在发布此内容之前,我已经检查过 StackOverflow,但我找不到我需要的确切内容。

谢谢您的帮助!