dependencies与devDependencies的区别

npm install在安装node模块时,有两种命令参数可以把它们的信息写入package.json文件:

--save
--save-dev

但它的文档里,只提到一个小区别,--save会把依赖包名称添加到package.json文件dependencies键下,--save-dev则添加到package.json文件devDependencies键下,譬如:

{
    "name": "yo",
    "version": "0.0.0",
    "dependencies": {},
    "devDependencies": {
        "grunt": "~0.4.1",
        "grunt-contrib-copy": "~0.4.1",
        "grunt-contrib-concat": "~0.3.0",
        "grunt-contrib-uglify": "~0.2.0",
        "grunt-contrib-compass": "~0.7.0",
        "grunt-contrib-jshint": "~0.7.0",
        "grunt-contrib-cssmin": "~0.7.0",
    }
}

dependencies与devDependencies的区别:devDependencies下列出的模块,是我们开发时用的依赖项,像一些进行单元测试之类的包,比如grunt-contrib-uglify,我们用它混淆js文件,它们不会被部署到生产环境。dependencies下的模块,则是我们生产环境中需要的依赖,即正常运行该包时所需要的依赖项。

如果你将包下载下来在包的根目录里运行,执行如下命令,默认会安装两种依赖

npm install

如果你只是单纯的使用这个包而不需要进行一些改动测试之类的,只安装dependencies而不安装devDependencies。执行:

npm install --production

通过“npm install packagename”进行安装,只会安装dependencies

npm install packagename

如需安装devDependencies,执行:

npm install packagename --dev 

你可能感兴趣的:(dependencies与devDependencies的区别)