问题标签 [gruntfile]

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

javascript - 运行 grunt build 命令时 Gruntfile 不工作

我使用 yeoman 使用“yo webapp”创建了我的结构,我在安装过程中通过 npm 排除了所有额外内容并手动下载了引导文件。

我正在尝试运行“grunt build”命令,该命令应该获取 app 文件夹(及其子文件夹及其子文件夹等)中的所有内容,并将文件创建、编译、连接和缩小到父目录中的 dist 文件夹中(与应用程序处于同一级别),我相信任何使用过 yeoman 和 grunt 的人都知道。

出于某种原因,它不会这样做,我已经尝试在 gruntfile 中更改默认路径等以尝试使其工作,但它不能正常工作(老实说,说它根本不起作用更贴切,即使它在 cmd 中说它确实如此)。

它现在根据 cmd 完成构建任务(之前没有,声称 imagemin 任务存在问题,但我改变了那个,它现在可以工作(或者它说)),但是当我查看 dist 文件夹时,只有一个 index.html 和一个样式文件(其中不包括它应该......的一些 css 文件)。

这是我的文件夹结构的重要部分:

.tmp 文件夹是出于某种原因自动创建的,我假设它是为了帮助 grunt 做一些事情,因为它是在我将文件保存在 app 文件夹中并且 grunt 正在观看时创建的。

我想要的很简单:

  • 为了能够运行“grunt build”
  • 然后让 grunt 遍历所有文件夹和文件
  • 按预期连接、修改、重新创建、移动和创建文件(如果您将 yeoman 和 grunt 一起使用,您会更贴切地了解我的意思和期望)
  • 输出到 dist 文件夹

如果有帮助,文件夹中的文件类型如您所料,字体文件夹有 [EOT, TTF, OTF, WOFF, SVG],图像及其子文件夹使用 [PNG, JPEG, GIF],脚本有 [JS, PHP] 本身及其子文件夹和样式具有 [SASS、SCSS、CSS],但显然它只是我关心转移到 dist 的 CSS。

这可能会让你的想法复杂化,但希望你知道我在与 yeoman 合作后的期望,并且可以帮助我完成任务和运动。

这是我的 gruntfile:

我会截屏向您展示问题,但正如我所说,当我运行“grunt build”时,它会根据 CMD 通过,但实际上并没有按照我的解释执行预期的操作。

如果您需要任何澄清,请告诉我。

干杯,

-- 标清

0 投票
2 回答
96 浏览

gruntjs - Gruntfile.js 没有运行某些包

你能看看下面的 Gruntfile 看看你能不能确定为什么它没有运行 cssnano 和 autoprefixer?

Grunt 目前正在观看我的项目,每次保存都可以grunt-sass正常编译,但既没有也没有grunt-cssnanoautoprefixer他们的事情,也没有报告错误。

完成,没有错误。2015 年 11 月 25 日星期三 13:12:18 GMT+0000(GMT 标准时间)在 1.906 秒内完成 - 等待中...

文件“sass\styles.scss”已更改。运行“sass:dist”(sass)任务

我认为我在设置方面做错了grunt-contrib-watch(特别是 css 部分),但这只是一个猜测。

我的项目文件夹看起来像这样

  • 距离
    • css
      • 样式.css
  • node_modules(包括所有相关包)
  • 粗鲁的
    • 样式.css
  • Gruntfile.js
  • 包.json

而我的 Gruntfile 如下

0 投票
1 回答
506 浏览

gruntjs - Grunt 正在抛出错误消息

我正在尝试在我的项目中运行 grunt,但我不断收到以下错误。我按照实际 Grunt 网站上的“入门”进行了操作,并且不断收到此信息。我还在我的 Gruntfile 中包含了代码

这是我下面的 gruntfile:

这些是我收到的错误消息:

未找到本地 Npm 模块“grunt-contrib-compass”。安装了吗?

未找到本地 Npm 模块“grunt-contrib-uglify”。安装了吗?

未找到本地 Npm 模块“grunt-newer”。安装了吗?

未找到本地 Npm 模块“grunt-contrib-watch”。安装了吗?

警告:找不到任务“更新:指南针”。使用 --force 继续。

0 投票
1 回答
439 浏览

gruntjs - Grunt cssmin / CleanCSS 源地图变基

我正在使用具有以下“内容”文件夹结构的 cssmin:

其中 styles.min.css 和 styles.min.css.map 是连接/缩小“src”文件夹中所有样式表的结果。

我首先遇到的问题是 styles.min.css 包含错误位置的图像 URL(即“images/image1.png”而不是“../src/dir1/images/image1.png”),但幸运的是,这个 grunt 配置已修复那:

新问题:生成的源映射(“styles.min.css.map”)包含这样的源: ["content/src/dir1/style1.css", "content/src/dir2/style2.css"] 而不是["../src/dir1/style1.css", "../src/dir2/style2.css"]。这意味着地图指向的位置不正确,例如:

“content/dist/content/src/dir1/style1.css”和“content/dist/content/src/dir2/style2.css”

我能做些什么来解决这个问题?

作为参考,我也尝试了 csswring,但是尽管 sourcemaps 工作正常,但我发现一般图像/导入 url rebase 工作不正常,所以回到 cssmin。

非常感谢!

0 投票
0 回答
182 浏览

javascript - 任务 RequireJS 错误缺少“out”或“dir”配置值

我的 Gruntfile 是:

执行时出现此错误

错误:错误:缺少“out”或“dir”配置值。如果使用“appDir”进行完整的项目优化,请使用“dir”。如果要优化到一个文件,请使用“out”。在 Function.build.createConfig (D:\LauraAcosta\Fuentes Estadisticas\AgronetEstadisticas-master\node_modules\grunt-requirejs\node_modules\requirejs\bin\r.js:31109:19) 警告:任务“requirejs:dist”失败。使用 --force 继续。

我不知道这个错误的原因。谢谢!

0 投票
1 回答
138 浏览

angularjs - 警告:未找到任务“默认”

这是我的Gruntfile.js

在此处输入图像描述

在此处输入图像描述

0 投票
2 回答
177 浏览

gruntjs - 一种使用 Yeoman Webapp 加载 CSS 链接[rel=preload] 方法的方法

有没有办法将新标准link[rel=preload]与 yo webapp 一起使用,以便grunt serve加载 CSS 文件?
例子:

<link rel="preload" href="path" as="style" onload="this.rel='stylesheet'">

0 投票
1 回答
847 浏览

html - 对 html css 和 js 文件 404 咕哝(未找到)

修复我的 css/scss 编译后,我现在尝试在我的 html 文件上运行 css,但我不断得到:

GET http://localhost:8080/dist/css/screen.css 404(未找到)localhost/:26

获取http://localhost:8080/source/js/modernizr.js 404(未找到)localhost/:28

现在,我的 html 文件的路径如下:

我究竟做错了什么?这是一个html路径问题吗?还是 gruntfile.js 问题?html 或 gruntFile.js 中必须缺少某些内容

希望这是有道理的

这是我的文件夹结构。

0 投票
1 回答
163 浏览

javascript - 找不到从 cli 运行 php 的 grunt-shell 任务

我从grunt开始。我想从 CLI 执行几个 php 文件。

所以我已经安装了 grunt-shell npm install --save-dev grunt-shell

现在我有这个 gruntfile:

我已经尝试了调用任务的所有组合,但输出始终是:

Warning: Task "shell:php" not found. Use --force to continue. Aborted due to warnings.

0 投票
0 回答
158 浏览

node.js - 运行 grunt-nodemon 会抛出未找到模块错误。

我在节点应用程序中有 gruntfile(节点版本 -4.2.2,npm 版本 - 2.14.7),如下所示:

运行命令grunt 抛出如下错误:

我在应用程序根目录下同时拥有 gruntfile.js 和 server.js 文件,如下所示:

如果我更改grunfile.js 中的脚本文件路径,如下所示: