运行环境windows10npm5.6.0复现mkdirtestcdtestnpminstall--save-devmocha以上步骤操作下来,会显示安装成功但是在test文件夹下面没有自动生成node_modules文件夹解决mkdirtestcdtest\npminitnpminstall--save-devmocha只要初始化一下npm,再安装就会自动生成node_modules文件夹问题为什么会这样呢?npminstall的整个流程是怎么样的呢?单从这个问题上来说,-dev依赖于package.json,package.json又必须通过Inti生成.所以会安装失败根本原因还是对Install的原理不熟悉,这个需要自己看源码
2 回答
饮歌长啸
TA贡献1951条经验 获得超3个赞
你仔细看下命令行里的信息,第一遍安装会因为缺少package.json而失败,第二次才会成功。所以当然第二次能看到node_modules而第一次不能。npminit会生成package.json,而--save-dev要把包相关的信息记到package.json里,所以第一次就会失败;第二次能成功。其它的原理看源码吧。
拉丁的传说
TA贡献1789条经验 获得超8个赞
不知你接触过git没,我举一个git的例子,看能不能对你有所帮助:当你在本地新建一个文件夹时,想把这个文件夹的东西放到github或者gitlab等上存起来怎么办?直接使用gitadd、gitpush之类的指令肯定不行,需要先初始化git,也就是执行gitinit之后会在目录下生成一个隐藏的文件夹.git,里面就放置了一些这个项目的git配置信息,包括仓库地址、用户名、上传方式等等,当然这些配置信息可以修改npm也是同样的道理,没有初始化,它就不知道干嘛,程序的执行也就没有参照点,而这个参照点就是初始化之后出现的配置文件或者文件夹,或许这个文件夹或者文件是隐藏的,你看不见,但是不同的系统有不同的方式是可以看见的。
添加回答
举报
0/150
提交
取消
