package, 在Node中是“包”的意思,CommonJS的规范中,包是由“包结构”和“包描述文件”两部分组成的。
包结构: 用于组织包中的各种文件 ;
包描述文件: 描述包的相关信息,以供外部读取分析 (package.json);
如图,这就是一个简单的包了;
说几个较为常用的 :
dependencies : 依赖, 当前package.json所在的包内 需要的依赖包都写在这里,
还有个devDependencies , 比上面那个多个dev, 这里是开发环境的意思,就是在开发环境下的依赖模块;
写在这个里面的信息,都是一些模块的版本号及名称,比如:
通过使用 npm i ( npm install 的简写) 可一次性下载这里写好的全部模块
//项目运行时所依赖的模块
"dependencies": {
"@riophae/vue-treeselect": "0.4.0",
"axios": "0.18.1",
"vuex": "3.1.0",
"xlsx": "0.14.1"
},
//项目开发时所依赖的模块
"devDependencies": {
"autoprefixer": "^9.5.1",
"vue2-ace-editor": "0.0.15"
},
name:当前这个“包”的名称,后面跟的就是一个模块标识,需要用到这个包的时候:
require("xxx");
engines:运行引擎,指明node运行所需要的版本,比如:
{
"node": ">=8.9",
"npm": ">= 3.0.0"
}
deecription:包的描述
homepage : 主页
main:主文件
maintainers:作者
repository:仓库
script:脚本
//每次打开项目的时候 都会写一句: npm run dev , 这个就是执行了script 中的设置:
keywords:关键字 licenses:授权方式 version 版本号 config:应用的配置项;
版本号表达式:
表达式 | 版本范围 |
>=1.2.7 | 大于等于1.2.7 |
>=1.2.7 <1.3.0 | 1.2.7,1.2.8,1.2.9 |
1.2.3-2.3.4 | >=1.2.3 <=2.3.4 |
1.2-2.3.4 | >=1.2.0 <=2.3.4 |
1.2.3-2.3 | >=1.2.3 <2.4.0 |
1.2.3-2 | >=1.2.3 <3.0.0 |
* | >=0.0.0 |
1.x(等价于1.X) | >=1.0.0 <2.0.0 |
1.2.x | >=1.2.0 <3.0.0 |
""(等价于*) | >=0.0.0 |
1(等价于1.x.x) | >=1.0.0.0 <2.0.0 |
1.2(等价于1.2.x) | >=1.2.0 <1.3.0 |
~1.2.3(>=1.2.3 <1.(2+1).0) | >=1.2.3 <1.3.0 |
~1.2(>=1.2.0 <1.(2+1).0) | >=1.2.0 <1.3.0 |
~1(>=1.0.0 <(1+1).0.0) | >=1.0.0 <2.0.0 |
~0.2.3(>=0.2.3 <0.(2+1).0) | >=0.2.3 <0.3.0 |
~0.2(>=0.2.0 <0.(2+1).0) | >=0.2.0 <0.3.0 |
~9(>=0.0.0 <(0+1).0.0) | >=0.0.0 <1.0.0 |
~1.2.3-beta.2 | >=1.2.3-beta.2 <1.3.0 |
^1.2.3 | >=1.2.3 <2.0.0 |
^0.2.3 | >=0.2.3 <0.3.3 |
^0.0.3 | >=0.0.3 <0.0.4 |
^1.2.3-beta.2 | >=1.2.3-beta.2 <2.0.0 |
^0.0.3-beta | >=0.0.3 <0.0.4 |
^1.2.x | >=1.2.0 <2.0.0 |
^0.0.x | >=0.0.0 <0.1.0 |
^0.0 | >=0.0.0 <0.1.0 |
^1.x | >=1.0.0 <2.0.0 |
^0.x | >=0.0.0 <1.0.0 |