为了澄清前面的答案,如果您尝试从没有 npm package.json 文件的目录运行 npm install <package-name> 和 npm install <package-name> --save 可能会失败。
您可能会输入类似npm install crud --save 的内容并得到一些令人困惑的输出,如下所示:
npm install crud
npm WARN saveError ENOENT: no such file or directory, open '/Users/youruser/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/Users/youruser/package.json'
npm WARN youruser No description
npm WARN youruser No repository field.
npm WARN youruser No README data
npm WARN youruser No license field.
+ crud@0.0.28
这不是一个非常有用的错误消息——级别只是“警告”,最后一行显示请求的包安装在某个地方。但是,如果您查看您的目录,您会发现它仍然是空的。这个“谜”的解释是,一些包安装程序(如 PHP 的 composer)会初始化一个项目并下载包,而另一些(如 Python 的 pip 或 npm)则不会,因此您必须初始化目录并单独安装包。
运行npm init 并回答有关您项目的一些基本问题,或复制一个可行的package.json 文件,格式如下:
{
"name": "my-great-node-project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
}
}
注意包名!该名称与您尝试安装的软件包的名称不匹配。
目录初始化后,您应该能够运行npm install <package-name> --save 命令并将软件包安装到node_modules 目录并更新您的package.json 文件。