npm 安装 --save-dev 与 --save的使用与区别 npm敲到一半的时候发现:这个到底是-g呢还是--save还是--save-dev呢 在Node.js中,模块是一个库或框架,也是一个Node.js项目。Node.js项目遵循模块化的架构,当我们创建了一个Node.js项目,意味着创建了一个模块,这个模块的描述文件,被称为package.json。 npm 是一个包管理器,它让 JavaScript 开发者分享、复用代码更方便。 在程序开发中我们常常需要依赖别人提供的框架,亦或是方法库,写 JS 也不例外。这些可以重复的框架代码被称作包(package)或者模块(module),一个包可以是一个文件夹里放着几个文件,而这些文件就存放在package.json 。

1.首先要先了解package.json

在Node.js中,模块是一个库或框架,也是一个Node.js项目。Node.js项目遵循模块化的架构,当我们创建了一个Node.js项目,意味着创建了一个模块,这个模块的描述文件,被称为package.json。

2.什么是npm

npm 是一个包管理器,它让 JavaScript 开发者分享、复用代码更方便。

在程序开发中我们常常需要依赖别人提供的框架,亦或是方法库,写 JS 也不例外。这些可以重复的框架代码被称作包(package)或者模块(module),一个包可以是一个文件夹里放着几个文件,而这些文件就存放在package.json 。

3.如何生成package.json

$ npm init //项目初始化 $ npm init -y //快速生成package.json { "name": "vue-cli", "version": "1.0.0", "description": "", "main": "index.js", "dependencies": { "vue": "^2.5.17" }, "devDependencies": {}, "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "author": "", "license": "ISC" }

name -- 包名.
version -- 包的版本号。
description - -包的描述。
author - -包的作者
dependencies / devDependencies -- 生产/开发环境依赖包列表。它们将会被安装在 node_module 目录下。
main - -main 字段指定了程序的主入口文件
license--授权
有兴趣的可以去了解一下package属性 此处为快速搭建

4.--save与 --save -dev的区别

---npm i 插件 ,会把插件安装到node_modules目录中,不会修改package.json,

---npm i 插件 --save (-S) ,项目发布上线之后还会依赖用到的插件,没有这些插件,项目不能运行

---自动更改package.json 写入dependencies 节点

---npm i 插件 -g是不会更改package中的内容 但是可以存在node_modules目录中

---没有package.json 还怎么开开心心的 clone呢

---npm i 插件 --save-dev(-D) ,安装到开发依赖中,项目上线之后不会用到的插件,例如'babel-loader',项目解析完发布

---自动更改package.json 写入devDependencies 节点

dependencies(运行依赖)

也就是我们项目运行上线还会使用的插件 比如webpack axios vant Element UI框架

devDependencies(开发依赖)

也就是帮助开发的插件 比如babel live-server lodash loader类似的