npm中的--save与--save-dev的区别、运行时依赖、开发时依赖、install、dependencies、devDependencies、jQuery


1、表面区别

npm install在安装npm包时,有两种命令参数可以把它们的信息写入package.json文件,一个是npm install --save另一个是npm install --save-dev,它们表面上的区别是--save会把依赖包名称添加到package.json文件dependencies键下,--save-dev则添加到 package.json文件devDependencies键下。


2、package.json文件

{
    
    
	"dependencies": {
    
    
		"vue": "^2.2.1"
	},
	"devDependencies": {
    
    
		"babel-core": "^6.0.0",
		"babel-loader": "^6.0.0",
		"babel-preset-latest": "^6.0.0",
		"cross-env": "^3.0.0",
		"css-loader": "^0.25.0",
		"file-loader": "^0.9.0",
		"vue-loader": "^11.1.4",
		"vue-template-compiler": "^2.2.1",
		"webpack": "^2.2.0",
		"webpack-dev-server": "^2.2.0"
	}
}

3、本质区别

npm自己的文档说dependencies是运行时依赖,devDependencies是开发时的依赖。即devDependencies下列出的模块,是开发时使用,比如安装js的压缩包gulp-uglify时,采用的是npm install --save-dev gulp-uglify命令安装,因为在发布后用不到它,而只是在开发才用到它。dependencies下的模块,则是发布后还需要使用的依赖模块,譬如jQuery库或者Vue框架等,在开发完后肯定还要依赖它们,否则就运行不了。正常使用npm install时,会下载dependenciesdevDependencies中的模块,当使用npm install --production或者注明NODE_ENV变量值为production时,只会下载dependencies中的模块。

猜你喜欢

转载自blog.csdn.net/weixin_51157081/article/details/125180200