package.json中模块版本前^,~以及什么都没有的区别

2019-7-14 一诺 前端工具

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)
也就是说安装时不改变大版本号,只安装此版本和补丁版本。


标签: package

分享这篇文章
赞助鼓励:如果觉得内容对您有所帮助,您可以支付宝(左)或微信(右):

声明:如无特殊注明,所有博客文章版权皆属于作者,转载使用时请注明出处。谢谢!

发表评论:

皖ICP备15010162号-1 @2015 勿恨水长东
qq:1614245331 邮箱:13515678147@163.com Powered by emlog