玩命加载中🤣🤣🤣

NodeJs-03-npm


NodeJs-03-npm

npm

基本使用

# 创建 package.json 文件
npm init

package.json 内容示例

{
  "name": "npm-demo", #包的名字
  "version": "1.0.0", #包的版本
  "main": "index.js", #包的入口文件
  "scripts": { #脚本配置
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "", #作者
  "license": "ISC",
  "description": ""  #包的描述
}

初始化的过程中还有一些注意事项:

  1. package name ( 包名 ) 不能使用中文、大写,默认值是 文件夹的名称 ,所以文件夹名称也不能使用中文和大写
  2. version ( 版本号 )要求 x.x.x 的形式定义, x 必须是数字,默认值是 1.0.0
  3. ISC 证书与 MIT 证书功能上是相同的,关于开源证书扩展阅读 http://www.ruanyifeng.com/blog/2011/05/how_to_choose_free_software_licenses.html
  4. package.json 可以手动创建与修改
  5. 使用 npm init -y 或者 npm init --yes 极速创建 package.json

生产依赖与开发依赖

类型 命令 补充
生产依赖 npm i -S uniq
npm i --save uniq
-S 等效于 --save, -S 是默认选项
包信息保存在 package.jsondependencies 属性
开发依赖 npm i -D less
npm i --save-dev less
-D 等效于 --save-dev
包信息保存在 package.jsondevDependencies 属性

打个比方

npm i uniq
npm i --save-dev less
{
  "dependencies": { // 生产依赖
    "uniq": "^1.0.1"
  },
  "devDependencies": { // 开发依赖
    "less": "^4.4.2"
  }
}

全局依赖

npm i -g nodemon // 这个包用来热启动
nodemon xxx.js

全局安装和局部安装的差异

  • 全局安装的命令不受工作目录位置影响
  • 使用方式不同:全局安装会暴露一个全局的命令去执行
  • 安装位置不同:可以通过 npm root -g 可以查看全局安装包的位置
  • 只有全局工具适合全局安装

安装指定版本包与删除

# 安装
npm i <包名@版本号>
## 示例
npm i jquery@1.11.2

## 局部删除
npm remove uniq
npm r uniq
## 全局删除
npm remove -g nodemon

配置别名

配置 package.json 中的 scripts 属性

{
  .
  .
  .
  "scripts": {
    "server": "node server.js --open",
    "start": "node index.js", // 运行start可以不加 run
  },
  .
  .
}

配置完成后,可以使用别名执行命令

npm run server
npm start === npm run start
  • npm start 是项目中常用的一个命令,一般用来启动项目
  • npm run 有自动向上级目录查找的特性,跟 require 函数也一样(意思是如果当前目录没有 package.json.scripts,会向上找,直到找到 package.json.scripts
  • 对于陌生的项目,我们可以通过查看 scripts 属性来参考项目的一些操作

yarn

官方网址:https://yarnpkg.com/

yarn 安装及常用命令

# 安装
npm i -g yarn

# 初始化
yarn init / yarn init -y

# 安装包
yarn add uniq # 生产依赖
yarn add less --dev # 开发依赖
yarn global add nodemon # 全局安装

# 删除包
yarn remove uniq # 删除项目依赖包
yarn global remove nodemon # 全局删除包

# 安装项目全部依赖
yarn

# 运行命令别名
yarn <别名> # 不需要添加 run

yarn 的 package.json

{
  "name": "yarn-demo",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT"
}

yarn 全局安装包不能用的问题

  • 先查看 yarn 全局位置在哪 yarn global bin
  • 将这个文件夹配置到环境变量

yarn 配置淘宝镜像

yarn config set registry https://registry.npmmirror.com/

# 查看 yarn 配置项
yarn config list

nrm/yrm

nrm 相关文档

yrm 相关文档


文章作者: 👑Dee👑
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 👑Dee👑 !
  目录