为什么npm init实际上初始化了一个grunt项目?

Bri*_*ald 9 javascript node.js npm gruntjs

我正在努力理解Node生态系统以及npm及其包如何协同工作,我发现npm init初始化一个"grunt项目"并将package.json文件添加到您的目录中非常奇怪.

由于节点包管理器管理许多不同的"包",我希望更像 npm grunt init

任何人都可以告诉我这里发生了什么以及是什么让咕噜如此特别以至于它成为主要npm init命令?

**重要注意事项**在更好地学习和理解所有这些之后,我强烈建议您不要使用Grunt NOR Gulp而是取出中间人并使用npm脚本来满足您的前端构建需求.有关更多信息,请参阅Cory House的这篇精彩文章

imj*_*red 18

一切npm init都是给你提示(见下文)来创建一个package.json,它没有任何与grunt相关的东西.

name: (test) 
version: (0.0.0) 
description:
entry point: (index.js) 
test command: 
git repository: 
keywords: 
author: 
license: (BSD) 
Run Code Online (Sandbox Code Playgroud)

Grunt当然可以(也可能应该)安装npm,但它绝对不是初始化package.json的一部分.

您可以在此处阅读有关package.json的更多信息.

  • 非常感谢.我对package.json的第一次介绍是在gruntjs"入门"页面上,所以我认为它是grunt的一部分,特别是.我现在明白,package.json是一个npm用于存储元数据的文件,而grunt恰好也恰好使用了该文件. (2认同)
  • 是的!绝对可以看出这可能会让人感到困惑. (2认同)