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

javascript - Grunt 警告:找不到任务“concat”

我正在尝试从一个简单的 Grunt 示例开始,但我遇到了grunt-contrib-concat的问题。

这是我的 Gruntfile.js:

和我的 package.json:

运行 npm install 不会显示任何明显的错误:

这是我的目录结构的样子:

当我运行 grunt concat 我得到这个:

我的设置:

Lubuntu 12.10,节点:v0.10.25,npm:1.4.21,grunt-cli:v0.1.13,grunt:v0.4.5

我错过了什么吗?

0 投票
1 回答
747 浏览

javascript - 将 grunt 添加到基于 AngularJS 构建的现有应用程序中

我有一个 AngularJS 应用程序,它是在没有 yeo、grunt、bower 等的情况下构建的。目前这是通过 Rails 完成的。但是由于某些问题,我们正在将 AngularJS 应用程序与 Rails 分开,并将 Rails 纯粹用作 API。

  • 如何将 grunt 集成到现有应用程序中?这是否可能。
  • 坑坑洼洼?

根据应用程序的当前架构,控制器、服务、模板、过滤器、指令都在单独的文件夹中。

  • 实现 grunt 是否需要任何特定的文件夹结构?

需要做的基本事情:

  • 将源文件压缩为一个(控制器为 1 个控制器等)
  • 缩小

当前的 grunt 文件

我该如何开始?抱歉,如果这看起来很明显,但这将是第一次使用 grunt,因此希望得到适当的建议。

0 投票
0 回答
187 浏览

angularjs - 是否可以将源映射传递给 grunt-ng-annotate?

我正在连接一些文件,然后将它们传递给ng-annotate然后缩小。有没有办法将源映射传递给grunt-ng-annotate

0 投票
1 回答
706 浏览

javascript - 由于注释掉代码的解析错误,咕噜声失败

当我连接一堆 js(包括 jquery)时,当我咕哝抱怨“第 1019844 行的意外令牌(])时出现错误......被注释掉

第一行是不应该是评论的评论,如果没有人工干预,我将如何处理 grunt?

编辑:我的 gruntjs 片段

0 投票
1 回答
2876 浏览

javascript - grunt 的新手 - 警告:找不到任务“concat,uglify”

正如标题所说,我是 Grunt 的新手。我正在关注位于:http: //24ways.org/2013/grunt-is-not-weird-and-hard/的教程。这是一个较旧的教程,但大多数似乎都一样。我已经安装了“grunt-contrib-concat”和“grunt-contrib-uglify”并且可以单独运行。但是当我运行时grunt,我收到以下错误:Warning: Task "concat, uglify" not found. Use --force to continue. Aborted due to errors.我一直在环顾四周,似乎无法弄清楚。我的文件如下:

Gruntfile.js:

包.json:

0 投票
1 回答
91 浏览

node.js - concat 的 Grunt concat 结果

我正在使用 Grunt 来执行构建任务,并且我已经细分了串联活动。特别是,我有一个用于 Bootstrap 的 concat,一个用于 DataTables,然后是一个将它们加上 jQuery 并尝试制作一个整体的 concat。

我很确定我的失败是由于异步调用造成的。我试图在“炼狱”中的文件存在之前将它们连接起来!但是,除了创建一个重复所有已完成的连接的新任务之外,我不确定如何解决这个问题。

这是我将其可视化的方式,但是我非常清楚该任务的异步性质使其成为不可能:

或者尝试变得聪明并使用标签,noCompMonolith 看起来更像这样(如果我正确格式化标签,这实际上是一样的):

我也尝试使用一个函数,但是 initConfig 必须对正确的数组进行完整性检查,而不是返回数组的函数。或者,我有语法错误!在这种情况下,我实际上会尝试连接整个以前的集合,但不要复制粘贴,而是尝试聪明一点:

底线:

  1. 分别连接不同的“组件”。当我开发 Grunt 任务时,我可能想要 Bootstrap 而不是单体。或 DataTables 作为单独的文件。我想在“炼狱”中将我的担忧分开,直到我对它们做更多的事情。

  2. 对这些不同的“组件”进行第二次连接

在 Grunt 中是否有已知的技术可以做到这一点?我的一些想法是否正确,但语法错误?

0 投票
0 回答
529 浏览

gruntjs - Grunt concat - 横幅行为

我有一个 Gruntconcat任务,我试图了解如何应用横幅。如果我在“选项”对象中提供横幅,它将应用于我的每个子任务。这是设计使然,但不是最优的——理想情况下,每个 concat 任务都有自己的横幅!

我的子任务之一是连接我的 concat 的结果。在这种情况下,应用了 3 个横幅。一个到每个初步连接和一个到最终连接。

我会很高兴有一个解决方案:

如何将自定义横幅仅应用于每个子任务?在我的想象中,语法应该是这样的:

在挖掘 grunt-contrib-concat 文档时,是否存在我可能忽略的上述内容?

对我来说,另一种选择是将我的所有评论放在顶部的一条评论中,包括所有包含库的许可证信息。如果单个任务可以去掉横幅然后只添加一个?

这是我当前的 concat 对象,如果它对任何人都有用(您可以假设模板片段都有效):

在这个例子中,标题的 3 个实例被吐出。

0 投票
1 回答
256 浏览

javascript - grunt-contrib-concat:指定要连接的最后一个文件?

我正在使用 grunt-contrib-concat 将我所有的自定义 JS 文件连接在一起,并用 IIFE 包装它们。我遇到了一些加载顺序问题(即,我的 init 文件在某些​​模块之前执行,导致未定义的错误)。我想init.js在 concat 顺序中指定应该是 LAST,但我也不想为所有其他 JS 文件指定顺序,只是这个特定的文件排在最后。

这是我的 concat 的当前配置:

如何在不向我的项目添加额外的 grunt 模块的情况下指定要连接的最后一个文件?

0 投票
1 回答
846 浏览

javascript - 使用 Grunt html2js 和 concat,如何从 concat js 文件中引用 html 文件

我有一个非常大的模块化 AngularJS 应用程序。我将 Grunt 设置为使用 html2js 从多个 html 文件创建单个 JS 文件。

然后我在我的所有 js 文件和新创建的 templates.js 文件上运行 concat:

我现在有一个包含所有 js 文件和 html 文件的文件:app.js

我在 index.html 中引用了 dist/app.js 文件

我遇到的问题是在我的应用程序中,我引用了一些 HTML 文件,例如:

当我运行已部署的应用程序时,我收到一条错误消息,指出它找不到这些文件。当我在本地运行我的应用程序时,它运行良好,因为文件位于正确的路径中。

问题是:部署应用程序时,我如何在我的代码中引用这些 html 文件,因为它们现在驻留在 dist/app.js 中

我还引用了 ui-router 中的 html 文件: (function () { 'use strict';

})();

0 投票
1 回答
307 浏览

grunt-contrib-concat - grunt concat 试图将内联源映射作为文件名读取

我使用 browserify 来捆绑一些文件,当“调试”选项为真时,它还会在文件末尾添加一个源映射

问题是当我通过 grunt-contrib-concat 将此文件与另一个文件连接时,它会尝试将 sourceMappingURL 作为文件名读取。所以我得到这个错误

我尝试了所有我能想到的方法,甚至重新安装了 node/npm,但没有成功。

它曾经适用于当前设置。它突然开始不起作用。也许更新了节点模块或其他东西。但是我尝试安装曾经可以工作的原始版本(降级),但仍然没有运气。

任何见解表示赞赏,谢谢。