在没有package.json文件的文件夹中运行“npm install –save X”

我正在编写一个库,并且需要知道如果用户在package.json文件存在之前尝试在其项目中运行npm install -SX会发生什么情况。

我刚刚在Windows上试了一下,果然,NPM并没有提供足够的服务,但是当安装命令完成后,仍然没有node_modules文件夹和package.json文件。

有谁知道预计会发生什么? 我假设我应该要求我的库的用户在运行“npm install X”之前运行“npm init”?

看起来NPM在安装结束时会抛出一个错误 –

 ENOENT: no such file or directory, open 'package.json' 

但我不知道是否阻止安装过程中创build一个node_modules目录,实际上把依赖关系在那里。

不带-g标志的npm install将遍历文件夹树检查包含package.jsonnode_modules文件夹的文件夹。

如果满足这两个条件中的任何一个,那么该文件夹将被视为您正在运行的npm命令的当前目录。 如果找不到这样的文件夹,则使用当前文件夹。

正如你所说,一个node_modules文件夹将被创build,并在包被加载到caching后,它将被解压到该文件夹​​。