zoukankan      html  css  js  c++  java
  • npm相关依赖操作+版本问题

    (1)基本用法

    1、本地安装npm install <package name>,缩写install缩为i
    2、全局安装npm install -global <package name>,缩写global缩为g

      

    3、git地址安装

      

    4、强制force(武力、军队)安装

      

    5、删除node_modules文件夹,重新安装

      

    (2)版本控制

    1、安装潜规则:install命令总是安装模块的最新版本
    2、特定版本指令为npm i <package name>@版本号

      

    (3)指定依赖关系(生产依赖/开发依赖)

      

    (4)版本说明~与^区别

      这里首先需要明确大版本→小版本→补丁包的区别(王者荣耀的玩家自动脑补即可......)

    当我们查看package.json中已安装的库的时候,会发现他们的版本号之前都会加一个符号,有的是插入符号(^),有的是波浪符号(~)。那么他们到底有什么区别呢?
    先贴一个例子,对照例子来做解释:

        

      当我们使用最新的Node运行‘npm instal --save xxx',的时候,他会优先考虑使用插入符号(^)而不是波浪符号(~)了。
      这对于你来说意味这什么呢?首先我们需要理解这两者(~和^)的区别。

    区别:

    波浪符号(~):他会更新到当前minor version(也就是中间的那位数字)中最新的版本。放到我们的例子中就是:body-parser:~1.15.2,这个库会去匹配更新到1.15.x的最新版本,
    如果出了一个新的版本为1.16.0,则不会自动升级。波浪符号是曾经npm安装时候的默认符号,现在已经变为了插入符号。 插入符号(^):这个符号就显得非常的灵活了,他将会把当前库的版本更新到当前major version(也就是第一位数字)中最新的版本。放到我们的例子中就是:bluebird:^3.3.4
    这个库会去匹配3.x.x中最新的版本,但是他不会自动更新到4.0.0

    通俗理解:

    波浪号为补丁版本最新版
    插入符号为小版本最新版

      

       接下来做下测试,实际考察下两者区别

    (5)测试版本号~与^

      1、初始化项目后安装特定版本jquery1.1.11,如下

        

         

         接下俩看下下载的安装依赖版本

        

    如图所示,正是1.1.11版本

      2、接下来删除依赖包和锁文件package-lock.json,再次下载

         

         我们看下^1.11.1再次通过npm i下载时的情况

    此时版本为1.12.4,如下所示

        

    1.12.4版本是哪一代呢?一起看下

        

         查看可知1.12.4为次要版本最后最新版,验证到此结束

      3、接下来验证~补丁版

    同理,删除之前依赖包和锁文件,然后将版本控制为~

        

        接下来安装依赖

        

         然后看下依赖版本

        

    通过~1.11.1下载后的依赖版本为1.11.3,为什么?接下来看下jquery版本更迭即可知道

        

        最后遵守“大版本.次要版本.小版本”的格式,1.11.x系列的补丁版小版本最后最新一版为1.11.3。验证到此

         

    .

  • 相关阅读:
    Unity NGUI实现技能CD效果
    Unity NGUI中Anchor的用法
    Unity 技能按钮触发特效
    Unity NGUI 图集Atlas制作
    Unity NGUI 创建简单的按钮
    Unity 地形
    Unity GUI编程
    Unity 随机数的使用
    linux命令之pssh命令
    MySQL中SQL语句2
  • 原文地址:https://www.cnblogs.com/jianxian/p/12248610.html
Copyright © 2011-2022 走看看