问题说明
在某个项目中的子/孙子级...中的文件夹作为终端路径,下载某个软件包
但是软件包没有出现在当前文件夹下,也没有自动新建 node_modules
分析解决
- 注意:如果终端里敲击命令下载软件包,正确没问题
- 那可能是下载到了某个父级,文件夹下的 node_modules 中了
-
- 因为 npm 在下载包时,从当前目录一直查找到根目录 / 下有没有 node_modules 目录,有模块安装到这个目录下的 node_modules 目录里,如果没有找到则把模块安装到当前目录 node_modules 目录下
- 解决方案1:确认项目文件夹,切换终端路径为项目根目录文件夹,再次下载软件包
- 解决方案2:(在项目嵌套项目情况下使用)重新初始化一个 package.json 在当前子项目下,然后再下载软件包
- 补充:require/import 加载软件包的时候,也会逐级向父级找 node_modules 一直找到磁盘根目录
总结
在编写项目的时候,一定要看好哪个文件夹是你项目的根目录,包括在敲击终端命令所在文件夹路径也要看好