npm
在正式开始Node.js学习之前,我们先认识一下npm。
npm是什么东东?npm其实是Node.js的包管理工具(package manager)。
为啥我们需要一个包管理工具呢?因为我们在Node.js上开发时,会用到很多别人写的JavaScript代码。如果我们要使用别人写的某个包,每次都根据名称搜索一下官方网站,下载代码,解压,再使用,非常繁琐。于是一个集中管理的工具应运而生:大家都把自己开发的模块打包后放到npm官网上,如果要使用,直接通过npm安装就可以直接用,不用管代码存在哪,应该从哪下载。
1. npm install 做了哪些事情
在git clone项目的时候,项目文件中并没有 node_modules文件夹。
为什么呢?
我们知道这个文件中保存的是我们项目开发中所使用的依赖模块。这个文件夹可能有几百兆大小,如果放到github上,其它人clone的时候会非常慢,这个时候就想到用一个package.json依赖配置文件解决这个问题。
这样每个人下载这个项目的时候,只需要进入该项目目录 直接npm install npm就会到里面去找需要的函数库,也就是依赖。
例如package.json里有一段
"dependencies": {"vue": "2.5.17","vue-router": "3.0.2", "element-ui": "2.4.6",},
那么npm install就会读取dependencies中的模块,下载这些模块文件。
那么这些依赖会放在什么地方呢?我们在哪里能找到这些依赖文件呢?
npm install执行完以后,我们会发现在项目下多了一个 node_modules文件夹。我们安装的依赖文件都可以在这里面找到哦~。
2. npm install ...和npm install 有哪些区别呢
npm install <...> 只下载依赖模块,package.json中dependencies并没有改变。
npm install <...> --save 会自动往 package.json中"dependencies" 添加xxx属性。
npm install <...> --save -dev 自动往package.json中"devdependencies" 添加xxx属性。
注:
dependencies:生产环境需要依赖的库
devdependencies:只有开发环境下需要依赖的库
网友评论