问题标签 [gruntjs]

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 投票
4 回答
5624 浏览

node.js - 全局 NPM 模块不适用于 OS X Mountain Lion

我有一个很好的安装

OS X 10.8.2 上的 Node@v0.8.14 和 NPM@1.1.65 用于本地开发。

一切都按预期工作,除了我尝试使用-g全局标志安装的软件包,如 grunt 或 forever,没有作为终端命令找到。

我尝试添加一些路径,但到目前为止没有任何效果......

这是我的标准echo $PATH

谢谢您的帮助!

0 投票
1 回答
1462 浏览

javascript - 使用 grunt.js 生成动态文件名

是否可以在内置的 grunt 任务(例如concator min)之外生成动态文件名?我尝试使用类似<config:concat.dist.dest><%= dirs.dest %>文档中描述的东西。但这永远不会被解释/编译,它只是写出字符串。

更新: 这就是我根据 jakub.g 的回答所尝试的。我的 grunt.js 看起来像这样:

grunt.task.directive('<config:jquery.version>')返回null。所以文件名被命名为jquery-null.js.

然后我尝试了grunt.template.process('<%= grunt.jquery.version %>')and grunt.config.process('<%= grunt.jquery.version %>'),但没有一个起作用。

0 投票
2 回答
984 浏览

css - GruntJS 可以获取外部文件吗?

例如,我有index.css包含指向另一个 css 文件的链接:

可以将这些文件与 Grunt JS 连接起来吗?

0 投票
1 回答
437 浏览

javascript - 名称中带有点的 jshint 函数

我在 javascript 文件上运行 jshint,其中一些函数的名称中有点(作为命名空间的一种方式)。特别是,我正在使用 d3 库,并且我有很多看起来像的代码

我只需要关闭 jshint 对使用未定义变量的检查吗?或者有没有办法禁止检查某些变量名称。我正在使用 grunt 来构建项目。

0 投票
2 回答
2019 浏览

requirejs - 如何防止 requirejs 包含所有源文件而只包含模块文件?

当我用 r.js 构建一个项目时(我是通过 grunt 来做的,但我离题了),它会丑化并压缩项目的所有 javascript 文件并将它们包含在 build 文件夹中,即使所有这些文件都已经压缩成单个 javascript 文件,不再以各自的形式使用。

我正在使用模块,所以我不能使用“out”标志 b/c 它不兼容。我正在使用 grunt-contrib-clean 来清理所有额外的文件,但如果我可以避免首先包含它们,那将是理想的。

这是我咕哝的options.js:

当它构建时,它包含 lib 文件夹中的所有文件(当唯一需要的是 require.js 时),它包含由 page1 和 page2 导入的所有 javascript 文件的丑化版本,即使所有这些文件都已合并到 page1 .js 和 page2.js。

我错过了什么还是构建后清理只是生活中的一个事实?

0 投票
0 回答
36 浏览

gruntjs - 在 grunt 任务中对修改的文件进行操作

可能重复:
您如何在 Grunt.js 中查看多个文件,但只在更改的文件上运行任务?

在一个任务中,比如咖啡脚本编译器,我如何检索被更改的确切文件,以便我只能选择性地编译这些文件,而不必编译我的整个代码库。

0 投票
1 回答
1599 浏览

json - 使用外部 json 数据编译 mustache 部分

我正在为我们的内部文档和测试使用 mustache partials - 如另一个 SO question how to have grunt task render mustache partials to static HTML中所述,我现在想使用外部 json 文件驱动部分数据。json 文件将与部分文件命名相同,并将包含将与部分文件一起编译的模拟数据。

关于如何使它工作的任何建议?

0 投票
1 回答
415 浏览

javascript - grunt.js (a node.js build tool) is not creating directories or files. is it permission related?

We are using grunt.js as a build tool.

On one of our development machines (MacOS Mountain Lion), grunt is running but does not seem to create any files and directories.

Another thing which was different on that specific machine is that when we used the NPM to install some plugins for grunt we had to use sudo npm, otherwise we had permission errors.

We've checked the permissions on the parent directory and tried different things - nothing seemed to work. NodeJs still does not create any files or directories.

Any ideas?

UPDATE:

Apparently the html-compressor grunt plugin requires grunt 1.4 as a dependency.

0 投票
1 回答
11439 浏览

javascript - 使用 Yeoman 和 Mocha 对 NodeJS 和客户端进行全面集成测试

我用 Yeoman 运行了很棒的客户端测试。Yeoman 编译我的 CoffeeScript,在服务器中打开测试页面,使用 PhantomJS 访问它并将所有测试结果传递到命令行。这个过程非常 hacky,测试结果通过alert()消息传递给 Phantom 进程,该进程创建一个临时文件并用 JSON 格式的消息填充它。Yeoman(好吧,Grunt)遍历临时文件,解析测试并将它们显示在命令行中。

我解释这个过程的原因是我想给它添加一些东西。我也进行了服务器端测试。他们使用 mocha 和 supertest 来检查 API 端点和 Redis 客户端以确保数据库状态符合预期。但我想合并这两个测试套件!

我不想为服务器调用编写客户端模拟响应。我不想发送服务器模拟数据。在此过程中,我将更改服务器或客户端,并且测试不会失败。我想做一个真正的集成测试。因此,每当测试在客户端完成时,我想要一个钩子在服务器端运行相关测试(检查数据库状态、会话状态、移动到不同的测试页面)。

有什么解决办法吗?或者,或者,我从哪里开始破解 Yeoman / Grunt / grunt-mocha 来完成这项工作?

我认为 grunt-mocha 中的 Phantom Handlers 是一个很好的起点:

谢谢!这将有赏金。

0 投票
1 回答
846 浏览

node.js - 咕噜力手表?

我在 grunt watch 上运行指南针。我希望 grunt watch 在启动时始终运行任务。我称它为强制运行,但它可能被称为别的东西。提前感谢您的解决方案。