node : 3 npm

1.

JavaScript缺少包结构的定义,而CommonJS定义了一系列的规范。NPM的出现则是为了在CommonJS规范的基础上,实现解决包的安装卸载、依赖管理、版本管理等问题。

包结构:

package.json(可以用npm init 配置创建)

{
  "name": "node2_laoma",   // 名字,最好为小写。
  "version": "1.0.0",   // x.x.x : 第一个:主版本(大版本);第二个:次版本(代表了在主版本上增加了些功能);第三位:表示修复了些bug
  "description": "learn_node", // 当前包的描述
  "main": "index.js", // 当文件夹引用时,默认的搜索文件(文件夹引用见前一章)
  "directories": {
    "lib": "lib"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "MIT",
  "dependencies": {
    "string-width": "^4.2.0"  // 下次使用npm install命令时,会自动来读取这些配置,^的含义是:新安装的包可以大于其版本号(此处示例为4.2.0),但主版本号不变! ~的含义是主版本和次版本都不能变,修订号(即第三位)可以变;*的含义是主版本号也可以变。(默认为^)
  }
}

运用:

  1. 安装:npm install 包名
    1. options:
      1. --save-prod  (代表把当前安装包的配置写入到当前package.json文件中,可以用-P代替。默认参数,不写也可以。)
      2. --save-dev (开发时依赖。同-D)
      3. -g (或者 --global ,将包安装在全局环境下,那么这个包在其他地方也可以使用)
    2. 如果只写npm install,则会自动去读package.json配置文件去下载安装对应的包。
    3. 安装指定的版本:npm install 包名@x.x.x;安装最新的版本 :npm install 包名@latest
  2. 卸载:npm uninstall 包名
    1. options:
      1. --save-prod (从配置文件里的dependencies里移除)
  3. 设置镜像:npm config set registry http://xxxxxxxxxx
  4. 查看设置:npm config list
  5. 查看当前项目安装的包:npm ls
    1. options:
      1. --depth=1 (设置显示深度,此处为设置深度为1)
  6. 发布包:略
  7. 执行package.json中的script:
    示例: 

package-lock.json文件 (npm5.6出现的):作用就是锁住版本号,防止版本号在不同地方安装不同带来麻烦。

2.yarn是npm之外的另一种选择 (推荐!谁用谁知道!)

用法和npm相似,且弥补了npm很多缺点,此外yarn非常快!

详细使用自查(略)

yarn:更方便,更快速(并行下载),更简洁,缓存机制很棒!

发布了191 篇原创文章 · 获赞 1 · 访问量 4692

猜你喜欢

转载自blog.csdn.net/bluebloodye/article/details/103144142