任何人都可以建议我在这里做错了什么(我是 grunt 的新手)大学为我提供了基本的 gruntfile 设置
我已经安装了 node、js 和 grunt,但我不知道如何安装各种软件包(uglify、concat 等)——我应该使用哪个命令?
最佳答案
您必须问自己的第一个问题是,“grunt 依赖项的名称是什么?”
快速回答:
只需为您要安装的每个软件包执行 npm install <package-name>
即可。 在很大程度上,我认为包名称等同于它们的 github 名称。 (例如 grunt-contrib-concat
。)
npm install grunt-contrib-concat
将安装它,然后继续下一步。
提高可维护性:
为了获得最佳的可维护性和跨开发人员/环境支持,您应该考虑使用 package.json
列出您的依赖项。
一旦您在 package.json
中列出了所有依赖项,您就可以运行 npm install
,并且在需要时将安装所有依赖项。 (对于基于开发的依赖关系与基于运行时/生产的依赖关系管理,请继续阅读!)
最佳实践:
Node js 的最佳工作流程是首先使用 npm init
,以便为您创建 package.json 文件。然后,一旦你有了 package.json,你就可以安装每个依赖项/devDependency,方法是将它们添加到 json 文件中各自的列表中,或者使用 npm install <package name> --save
将它们即时添加到各自的列表中或 --save dev
分别。
NOTE: IF you are experimenting, and you'd rather NOT save a node module to your dependency list, then a simple
npm install <package name>
will do.
此时,我建议搜索 npm package.json best practices
- 因为您会找到一些有关 Nodejs 工作流程的有值(value)的信息。依赖管理可以令人惊奇,但前提是您知道如何真正利用所提供的实用程序。
考虑以下 package.json 文件的摘录:
"dependencies": {
"backbone": "*",
"underscore": "~*",
"requirejs": "*"
"jquery": "*"
},
"devDependencies": {
"grunt": "*",
"grunt-contrib-uglify": "*",
"grunt-contrib-concat": "*",
"grunt-contrib-copy": "*"
},
我们看到的例子是,dependency下的npm包在运行npm install --production
时会安装,开发包在运行npm install --development
时会自动安装,
NOTE: You can change your node environment as well which modifies the usage of a simple
npm install
with no flags.
大多数情况下,grunt 用于开发,因此我相信在 devDependencies
中找到与 grunt 相关的任何内容会更常见
示例 package.json:
关于javascript - GRUNT - 安装 Grunt 软件包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27107730/