zoukankan      html  css  js  c++  java
  • 关于package.json

    ---恢复内容开始---

    用angular开发前台项目,每个项目的根目录下面,都有一个package.json文件,

    定义了项目所需要的各种模块依赖,和项目的配置信息(比如名称,版本号等信息,有点像maven)。当我们执行npm install 命令时,就会根据这个配置文件,自动下载所需要的模块,也就是配置项目所需要的运行和开发环境。

    for example,下面是一个最简单的package.json文件,只定义两项数据:项目名称和版本

    {
        “name” : "xxx",
        "version" : "0.0.0", 
    }

    说明:package.json文件内部就是一个json对象,该对象的每一个成员就是当前项目的一项设置,

    name就是项目名称,version是版本(版本写法遵守“大版本.次要版本.小版本”的格式)。

    下面是一个完整的package.json文件。

    {
      "name": "cmdb-front",
      "version": "0.0.0",
      "license": "MIT",
      "scripts": {
        "ng": "ng",
        "start": "ng serve",
        "build": "ng build",
        "test": "ng test",
        "lint": "ng lint",
        "e2e": "ng e2e"
      },
      "private": true,
      "dependencies": {
        "@angular/animations": "^4.0.0",
        "@angular/common": "^4.0.0",
        "@angular/compiler": "^4.0.0",
        "@angular/core": "^4.0.0",
        "@angular/forms": "^4.0.0",
        "@angular/http": "^4.0.0",
        "@angular/platform-browser": "^4.0.0",
        "@angular/platform-browser-dynamic": "^4.0.0",
        "@angular/router": "^4.0.0",
        "bootstrap": "^4.0.0-alpha.6",
        "classlist.js": "^1.1.20150312",
        "core-js": "^2.4.1",
        "d3": "^4.10.0",
        "echarts": "^3.8.5",
        "font-awesome": "^4.7.0",
        "intl": "^1.2.5",
        "jquery": "^3.2.1",
        "ng2-cookies": "^1.0.12",
        "primeng": "^4.2.2",
        "rxjs": "^5.1.0",
        "zone.js": "^0.8.4"
      },
      "devDependencies": {
        "@angular/cli": "1.2.6",
        "@angular/compiler-cli": "^4.0.0",
        "@angular/language-service": "^4.0.0",
        "@types/jasmine": "~2.5.53",
        "@types/jasminewd2": "~2.0.2",
        "@types/node": "~6.0.60",
        "codelyzer": "~3.0.1",
        "jasmine-core": "~2.6.2",
        "jasmine-spec-reporter": "~4.1.0",
        "karma": "~1.7.0",
        "karma-chrome-launcher": "~2.1.1",
        "karma-cli": "~1.0.1",
        "karma-coverage-istanbul-reporter": "^1.2.1",
        "karma-jasmine": "~1.1.0",
        "karma-jasmine-html-reporter": "^0.2.2",
        "protractor": "~5.1.2",
        "ts-node": "~3.0.4",
        "tslint": "~5.3.2",
        "typescript": "~2.3.3"
      }
    }

    下面就具体说明package..json文件中各个字段的意思。

    dependencies字段,devDependencies字段

    dependencies字段指定了项目运行所依赖的模块,devDependencies指定项目开发所需要的模块。

    指定版本的各种限定主要有以下几种

    1,指定版本:比如1.1.1,遵守“大版本.次要版本.小版本”的格式规定,安装时只安装指定版本。

    2,波浪号+指定版本:比如~1.2.2,表示安装1.2.x的最新版本(不低于1.2.2),但是不安装1.3.x,也就是安装时不改变大版本号和次要版本号。

    3,插入号+指定版本:比如^1.2.2,表示安装1.x.x的最新版本(不低于1.2.2),但是不安装2.x.x,也就是安装时不改变大版本号。需要注意的是,如果大版本号为0,则插入号的行为与波浪号相同,这是因为处于开发阶段,即使次要版本号变动,也可能带来程序的不兼容。

    4,latest:安装最新版本。

    package.json文件可以手工编写,也可以使用npm init 命令生成。

    如果一个模块不在package.json文件中,就是开发时需要新加入的模块,可以单独安装这个模块,并使用相应的参数,将其写入package.json文件之中。方便之后npm install

    For example:

    npm install express --save

    npm install express --save-dev

    上面代码表示单独安装express模块,--save参数表示将该模块写入dependencies中,--save-dev表示将该模块写入devDependencies中。

    ---恢复内容结束---

    自立更生,艰苦奋斗!
  • 相关阅读:
    树莓派搭建NAS之Seaflile
    Samba配置不同用户组不同用户的访问权限
    Samba-Linux权限理解
    Samba 共享配置
    服务端主动给客户端推送消息
    drf 权限认证
    drf-jwt分页器详解
    drf-jwt的过滤,筛选,排序,分页组件
    jwt token认证
    jwt
  • 原文地址:https://www.cnblogs.com/javazxy/p/9045028.html
Copyright © 2011-2022 走看看