1、package.json是什么?
在Node.js中,模块是一个库或框架,也是一个Node.js项目。Node.js项目遵循模块化的架构,当我们创建了一个Node.js项目,意味着创建了一个模块,这个模块的描述文件,被称为package.json。
2、package.json案例
{
"name": "test",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build --prod",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "^8.0.0",
"@angular/cdk": "^8.0.0",
"@angular/common": "~8.0.0",
"@angular/compiler": "~8.0.0",
"@angular/core": "~8.0.0",
"@angular/flex-layout": "^8.0.0-beta.26",
"@angular/forms": "~8.0.0",
"@angular/material": "^8.0.0",
"@angular/platform-browser": "~8.0.0",
"@angular/platform-browser-dynamic": "~8.0.0",
"@angular/pwa": "^0.800.1",
"@angular/router": "~8.0.0",
"@angular/service-worker": "~8.0.0",
"hammerjs": "2.0.8",
"ngx-perfect-scrollbar": "^7.2.1",
"rxjs": "6.4.0",
"tslib": "^1.9.0",
"zone.js": "~0.9.1"
}
}
3、package.json属性
name - 包名.
version - 包的版本号。
description - 包的描述。
homepage - 包的官网URL。
author - 包的作者,例如:yinuocode <yinuocode@163.com>。
contributors - 包的其他贡献者。
dependencies - 生产环境依赖包列表。
devDependencies - 开发环境依赖包列表。
repository - Repo包括type和URL,type可以是git或svn,URL则是包的Repo地址。
main - main 字段指定了程序的主入口文件
keywords - 关键字
4、关于版本号的描述
(1)指定版本号 比如
"hammerjs": "2.0.8", (表示安装6.4.0的版本)
"rxjs": "6.4.0", (表示安装6.4.0的版本)
(2)~+指定版本 比如
"@angular/common": "~8.0.0",(表示安装8.0.x版本,不低于8.0.0版本,不安装8.1.x)
"zone.js": "~0.9.1", (表示安装0.9.x版本,不低于0.9.1版本,不安装1.0.x)
也就是说安装时不改变大版本号和次要版本号,只安装最新的补丁版本。
(3)^+指定版本:比如
"@angular/cdk": "^8.0.0", (表示安装8.0.0及以上的版本,但是不安装9.0.x)
"tslib": "^1.9.0", (表示安装1.9.0及以上的版本,但是不安装2.0.x)
也就是说安装时不改变大版本号,只安装此版本和补丁版本。