美文网首页让前端飞
npm模块安装目录测试

npm模块安装目录测试

作者: gzgogo | 来源:发表于2019-03-27 17:49 被阅读0次

某天有个开发者找到我,说安装我们提供的模块后,目录下找不到,调查了一下,当他在当前目录创建一个package.json文件后,可以看到模块被安装到当前目录,为了弄清楚其中规律,做了以下实验:

  1. 父子目录均无package.json,在子目录下执行nom i moment —savemoment安装在子目录下,并在子目录下生成node_modules以及package-lock.json文件,但不生成package.json
  2. 在子目录提前生成package.json,效果同一,模块被安装到子目录下
  3. 父目录包含node_modules目录或package.json文件,在子目录下执行安装,moment会被安装到父级目录下
  4. 无论父目录包含package.json文件还是node_modules目录,只要子目录下存在package.json文件或node_modules目录,子目录下执行安装,moment会被安装到子目录下。在父级目录安装时,也会在父级目录下安装该模块,即父子目录都会包含node_modules/moment

总结:

  1. 执行npm i xxx安装某个模块时,如果当前目录包含package.jsonnode_modules,则会将模块安装到当前目录,若不存在,会从当前目录开始,向父级目录依次查找,直到找到包含package.jsonnode_modules的目录,模块会被安装在该目录下。如果到根目录依然没有找到包含package.jsonnode_modules的目录,则当前模块会被安装到当前目录下。
  2. 当父子目录均包含node_modules目录或package.json文件时,安装相同模块(即使版本相同),会在父子目录下各安装一个

根据以上说明,可以猜测该开发者应该是当前目录下没有package.jsonnode_modules目录,但是某个父目录包含,所以安装我们的模块时,该模块被安装到了那个父级目录下,所以当前目录下找不到

相关文章

  • npm模块安装目录测试

    某天有个开发者找到我,说安装我们提供的模块后,目录下找不到,调查了一下,当他在当前目录创建一个package.js...

  • 利用npm 安装删除模块

    npm安装模块 【npm install xxx】利用 npm 安装xxx模块到当前命令行所在目录;【npm in...

  • npm相关

    1、npm安装模块 【npm install xxx】利用 npm 安装xxx模块到当前命令行所在目录;【npm ...

  • NodeJS利用npm 安装删除模块

    npm安装模块 利用 npm 安装xxx模块到当前命令行所在目录; 利用npm安装全局模块xxx; 本地安装时将模...

  • npm

    npm安装模块【npm install xxx】利用 npm 安装xxx模块到当前命令行所在目录;【npm ins...

  • npm 安装卸载模块 & ionic插件安装与卸载

    npm安装模块 npm install xxx利用 npm 安装xxx模块到当前命令行所在目录npm instal...

  • npm基本安装卸载命令

    npm安装模块 【npm install xxx】利用 npm 安装xxx模块到当前命令行所在目录; 【npm i...

  • 利用 npm 安装删除模块

    npm安装模块: npm install xxx:利用 npm 安装xxx模块到当前命令行所在目录;npm ins...

  • npm 常用命令

    npm安装模块【npm install xxx】利用 npm 安装xxx模块到当前命令行所在目录;【npm ins...

  • npm安装卸载

    npm安装模块 【npm install xxx】利用 npm 安装xxx模块到当前命令行所在目录; 【npm i...

网友评论

    本文标题:npm模块安装目录测试

    本文链接:https://www.haomeiwen.com/subject/cqltbqtx.html