zoukankan      html  css  js  c++  java
  • node.js模块依赖及版本号

    摘要:

      Node.js最重要的一个文件就是package.json,其中的配置参数决定了功能。例如下面就是一个例子

    {
      "name": "test",
      "version": "1.0.0",
      "description": "test",
      "main": "main.js",
      "keywords": [
        "test"
      ],
      "author": "wade",
      "license": "MIT",
      "dependencies": {
        "express": "^4.10.1"
      },
      "devDependencies": {
        "jslint": "^0.6.5"
      }
    }

    dependencies与devDependencies:  

      一个node package有两种依赖,一种是dependencies,另一种是devDependencies,其中前者依赖的项是正常运行该包时所需要的依赖项,而后者则是开发的时候需要的依赖项,像一些进行单元测试之类的包。简单来记就是下面的

    "dependencies": {}     //生产环境

    "devDependencies": {}//开发环境

      在package.json所在目录执行npm install的时候,devDependencies里面的模块也会被安装的。如果我们只想安装dependencies里面的包,可以执行

    npm install --production

    如果只安装devDependencies,可以执行

    npm install --dev

    同理,使用npm install node_module –save自动更新dependencies字段值,使用npm install node_module –save-dev自动更新devDependencies字段值。

    版本号:

      每一个模块后面对应的就是他的版本号,如"^4.10.1"。下面是几个版本的表达式

    表达式 版本范围
    >=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 <1.3.0
    ""(等价于*) >=0.0.0
    1(等价于1.x.x) >=1.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
    ~0(>=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.0
    ^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-beta <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

    参考文献:

      http://stackoverflow.com/questions/22343224/difference-between-tilde-and-caret-in-package-json

      https://www.npmjs.org/doc/misc/npm-config.html#production

  • 相关阅读:
    Nodejs 接收RabbitMQ消息
    c#后台线程更新界面
    Nodejs JSON.parse()无法解析ObjectID和ISODate的问题
    【百度小程序】细数百度小程序踩的坑
    工作中可能用到的工具
    input输入文字的时候背景会变色,如何去掉呢?
    百度小程序开发工具不能预览
    引入外部 CDN失效时--怎么加载本地资源文件(本文以jquery为例)
    swiper插件遇到的坑
    原生JS实现JQuery的addClass和removeClass
  • 原文地址:https://www.cnblogs.com/xiyangbaixue/p/4123085.html
Copyright © 2011-2022 走看看