任何人都可以告诉我这里做错了什么(我是咕噜咕噜咕噜)一位大学生为我提供了基本的gruntfile设置
我已经安装了node,js和grunt,但我无法弄清楚如何安装各种软件包(uglify,concat等) - 我应该使用哪个命令?
答案 0 :(得分:4)
你必须问自己的第一个问题是," grunt依赖的名称是什么?"
快速回答:
只需为您要安装的每个包执行npm install <package-name>
即可。 在大多数情况下,我认为package-names等同于它们的github名称。 (例如grunt-contrib-concat
。)
npm install grunt-contrib-concat
将安装它,然后继续下一步。
提高可维护性:
为了获得最佳的可维护性和跨开发人员/环境支持,您应该考虑使用package.json
列出您的依赖项。
在package.json
中列出所有依赖项后,您就可以运行npm install
,并且在需要时将安装所有这些依赖项。 (对于基于开发的依赖性与基于运行时/生产的依赖关系管理,请继续阅读!)
最佳做法:
节点js的最佳工作流程是首先使用npm init
,以便为您创建package.json文件。然后,一旦你有了package.json,就可以通过将它们添加到json文件中的各自列表或者使用{将它们添加到各自的列表中来安装每个依赖项/ devDependencies。分别为{1}}或npm install <package name> --save
。
注意:如果您正在进行试验,并且您不想将节点模块保存到依赖关系列表中,那么只需要一个简单的
--save dev
。
此时,我建议您搜索npm install <package name>
- 因为您会找到有关nodejs工作流程的一些有价值的信息。依赖管理可能是惊人的,但前提是您知道如何真正利用所提供的实用程序。
请考虑以下摘自package.json文件:
npm package.json best practices
我们看到的示例是,在运行 "dependencies": {
"backbone": "*",
"underscore": "~*",
"requirejs": "*"
"jquery": "*"
},
"devDependencies": {
"grunt": "*",
"grunt-contrib-uglify": "*",
"grunt-contrib-concat": "*",
"grunt-contrib-copy": "*"
},
时将安装依赖项下的npm包,运行npm install --production
时将自动安装开发包,
注意:您也可以更改节点环境,从而修改没有标志的简单
npm install --development
的使用情况。
在大多数情况下,grunt用于开发,所以我相信在npm install
示例package.json:
答案 1 :(得分:1)
如果您定义了包含devDependencies(或依赖项)的package.json,那么您需要运行的只是npm install
然后grunt
否则运行类似的东西来安装并将它们保存到package.json
npm install --save-dev <package-name>