问题标签 [grunt-contrib-concat]

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

json - 创建用于 grunt concat 的动态数组

我需要根据我定义了 package.json 的变量连接一组文件。

然后在 grunt 中,我将它们构建到 JSON 数组中,并将其泵入src我的 grunt-concat-contrib 任务中的参数中。

我的问题是该paths变量在initConfig分配给JSON.stringify(paths).

如果我手动输入数组,如下所示,我从将路径变量记录到控制台的位置复制,它可以工作!

var paths = ["layouts/home/a/*.php","layouts/about/a/*.php","layouts/contact/b/*.php"];

我错过了什么?

0 投票
1 回答
115 浏览

gruntjs - 为多个 grunt concat 操作重用 src/dest 位置

我目前使用grunt-contrib-concat进行此设置:

此代码有效,但这些字符串中显然有很多非 DRY 代码。

我希望通过表达以下事实来解决这个问题:

  • 总是希望 'dest' 是 'dist/js/inject/'
  • 总是希望 'src' 以 'src/js/' 开头

所以,在我看来,我可以说类似于这个伪代码的话:

我的想法在那一点上落空了。这是否可以通过 Grunt 实现,还是我需要进行一些重复?

0 投票
1 回答
1687 浏览

node.js - Sublime Text 3 和 sublime-grunt-build

所以我有一个错误,当我尝试构建时,有命令行显示:

所以我用 npm 安装了 node.js,然后全局安装: grunt less grunt-cli grunt-less grunt-contrib-concat grunt-contrib-less

然后在 sublime 中,我在这里解压了 ssublime-grunt-build 的最新 zip:C:\Users\133\AppData\Roaming\Sublime Text 3\Packages\sublime-grunt-build

我在核心项目文件夹中有简单的 Sublime text 3 项目文件,只有这个基本文件夹:

使用 package.json:

和 Gruntfile.js:

我已将 Bootstrap 3 js 文件用于测试目的我缺少什么?

我无法成功地用谷歌搜索 grunt-cli 退出代码 99,而且我想也没有官方信息...

请帮忙 :)

0 投票
1 回答
910 浏览

node.js - Grunt 在浏览器缓存中使用版本缩小 JS 和 CSS 文件

我们在项目中第一次使用 grunt,我在 google 和 stackoverflow 上花费了大量时间,但找不到解决方案,目前我已经缩小了 JS 和 CSS 文件,但在浏览器上我想将版本添加到缩小的 JS 和CSS文件是什么production.jsproduction.css所以有什么方法可以在修改资产(js和css)文件时使用grunt或在节点中将版本添加到浏览器缓存中的文件

Concat.js

索引.ejs

编辑

使用filerev实现但未创建版本

grunt.config.set('filerev', {

});

};

默认.js

0 投票
1 回答
532 浏览

javascript - usemin 不替换块内的路径

我在理解 usemin(Prepare) 时遇到问题,如下所述:usemin

我的理解是,使用 usemin,您可以将多个文件组合为一个文件,这在构建 JS 应用程序时是一个好主意。我也了解您应该如何使用它的流程,例如:

然后,如果您有此代码:

concat 任务会将所有这些文件合并到一个名为 app.js 的文件中,并将其放在 .tmp 文件夹中。然后 uglify 任务会从 .tmp 文件夹中获取文件 app.js,对其中的所有 js 进行 uglify,然后将其放入 dist-folder。

假设在 useminPrepare 之前,我有另一个任务,它将原始 html (index.html) 也翻译到 dist 文件夹。现在,当 usemin 任务启动时,我已将其设置为使用 dist 文件夹,它应该将旧块替换为对生成的 app.js 的引用。所以现在,在 dist 文件夹内的 html 中,相同的部分应该如下所示:

这个对吗?那么现在不应该留下任何评论标签了吗?现在我有一个与usemin有关的问题。情况是这样的:在开始的 html 中,我在 usemin 标签中有 bower_components ( bower-install ) 的注释标签,如下所示:

使用此设置,一切似乎都运行良好,直到最后执行 usemin 任务。usemin 任务现在无法替换代码块。我已经确定了它不能的原因。这是因为我那里有那些凉亭评论块。因此,如果我分别进行第一个任务,然后将代码传输到 dist,然后删除那些凉亭注释标签,并在构建中制作其余标签,那么一切正常。我想解决这个问题,以便我可以直接运行所有任务。我怎么能解决这个问题?如果看到评论块,为什么 usemin 会失败?我可以更改 usemin 选项以忽略评论块吗?或者我应该写一个 grunt 任务,在注入 bower 组件并将 html 转移到 dist 后删除那些特定的注释块?我拥有的版本是:

0 投票
0 回答
803 浏览

javascript - 尝试为开发和生产模式运行 grunt 任务不会运行默认任务

我有两种模式,即在 prod 模式下用于 js 和 css 缩小的生产和开发模式,在 dev 模式下只有 concat。

我为此有多个任务,并且出于某种原因我已将默认模式设置为开发,但 grunt 无法说未找到任务“开发”。当我在默认任务中明确定义开发时。

这是我的 gruntfile.js

};

0 投票
2 回答
1435 浏览

javascript - Grunt 排除在构建期间连接一些文件

我正在使用 Yeoman generator-angular,它给了我这个 grunt 文件(我添加了一些任务,但没有改变给定的):'use strict';

我的文件结构是这样的:

在构建任务期间,我不想将 main.js 文件添加到文件dist/scripts夹中生成的 scripts.js 文件中。

我相信它是由一些 concat 任务完成的,但我不明白哪个任务执行它以及它的配置在哪里。

0 投票
1 回答
368 浏览

angularjs - Yeoman Angular 源映射连接和缩小

问题

断点不会从使用 grunt 任务生成的源映射中中断浏览器yeoman-angular-generator。代码已被连接和缩小。

我试过的

我已经查看了有关 grunt 任务配置的Stack Overflow 答案,并使用以下 grunt 配置生成了我认为正确的源映射:

我需要什么帮助

有没有人使用yeoman-angular-generator并设法连接然后缩小他们的代码并从中生成源映射?需要哪些步骤才能使其发挥作用?

我需要连接和缩小我的代码。让源映射与 JUST 缩小一起工作很容易,或者只是串联也很容易,但同时使用 concat 和 minify 似乎效果不佳。

有针对这个的解决方法吗?

0 投票
1 回答
998 浏览

javascript - Grunt 不看 JS 文件

我已经在这个问题上花费了一个多小时,查看了几个问题,但找不到答案。

在我的 javascript 文件上使用 watch 时遇到问题。监视所有其他文件并正确执行任务。

如果我从一开始就运行默认设置,concat 和 uglify 工作得非常好,但是如果我对 js 文件进行任何更改,watch 将直接忽略它。

这是我的文件:

非常感谢任何帮助。

0 投票
1 回答
3018 浏览

javascript - 如何连接文件夹中的所有 JS 文件?

我有一个包含许多子文件夹的主应用程序文件夹,每个子文件夹都有自己的子文件夹等,其中包含.js文件。

我想创建一个 grunt 任务,将所有.js文件连接到这个主顶级文件夹下的任何位置,该文​​件夹称为src.

有没有办法做到这一点?

现在,我有

但这并不能说明所有可能的.js文件位置。如果我.js在某个文件夹中添加一个新的,我不想手动更新 grunt 任务。