使用npm创建工程 package字段解释 npm常用命令

26 阅读3分钟

创建工程流程

  1. npm -y init
  2. touch .gitignore
  3. echo "node_modules .DS_Store" >> .gitginore
  4. git init .
  5. npm i [package]

site

npm官网:www.npmjs.com/

npm全命令:docs.npmjs.com/cli/v7/comm…

node查找包的顺序

cosnt Axios = require("axios")
  1. 查找是否有内置模块a
  2. 查找当前目录的node_modules中是否有a
  3. 依次查找上级目录的node_modules中是否有a,直到根目录

配置淘宝镜像源

npm config set registry https://registry.npm.taobao.org

初始化

npm init # 初始化工程,帮助生成 package.json 文件
npm init -y # 初始化工程,全部使用默认配置生成 package.json 文件

package.json

{
"dependencies": { // 本地普通依赖
"qrcode": "^1.4.4" // 依赖包qrcode,版本1.4.4,主版本号不变,此版本号和补丁版本可增
},
"devDenpendencies": { // 开发依赖
"webpack": "^5.0.0"
}
}

dependencies 依赖

  1. 本地依赖:本地依赖指在生产环境中需要使用的依赖包,例如项目的核心功能、框架、库等。这些依赖会被打包和发布到生产环境中,供用户使用。
  2. 开发依赖:开发依赖指在开发环境中需要使用的依赖包,例如测试框架、构建工具、代码检查工具等。这些依赖不会被打包和发布到生产环境中,只在开发过程中使用

在 package.json 文件中,我们可以使用 dependencies 和 devDependencies 两个字段来分别定义本地依赖和开发依赖。例如:

{
  "name": "my-project",
  "version": "1.0.0",
  "dependencies": {
    "express": "^4.17.1",
    "mongodb": "^3.6.3"
  },
  "devDependencies": {
    "mocha": "^9.1.3",
    "eslint": "^7.32.0"
  }
}

script

scripts 字段来定义一些自定义脚本,方便开发者快速执行常用操作。这些自定义脚本可以通过 npm run 命令来执行。例如:

{
  "name": "my-project",
  "version": "1.0.0",
  "scripts": {
    "start": "node app.js",
    "test": "mocha",
    "build": "webpack"
  },
  "dependencies": {
    "express": "^4.17.1",
    "webpack": "^5.58.1"
  },
  "devDependencies": {
    "mocha": "^9.1.3"
  }
}

在上面的例子中,我们定义了三个自定义脚本:

  • start:用于启动项目,执行的命令是 node app.js。
  • test:用于运行测试,执行的命令是 mocha。
  • build:用于打包项目,执行的命令是 webpack。

当我们需要执行这些自定义脚本时,可以使用 npm run 命令,例如:

npm run start # 启动项目 //只有start 可以缩写 `npm start`
npm run test # 运行测试
npm run build # 打包项目

使用 npm run 命令执行脚本时,会自动添加 node_modules/.bin 目录到 PATH 环境变量中,这样就可以在脚本中直接使用安装在项目中的依赖程序,而不需要手动添加路径。

安装

本地安装

会将包下载到当前命令行所在目录的node_modules中

绝大部分安装都使用本地安装

# 下面的 install 可以替换为 i
npm install 包名
npm install --save 包名
npm install 包名@版本号

若仅作为开发依赖,则添加参数 -D

# 下面的 install 可以替换为 i
npm install -D 包名
npm install -D 包名@版本号

若要还原安装

github clone 需要重新安装依赖

# 下面的 install 可以替换为 i
npm install
npm install --production # 仅还原dependencies中的依赖

全局安装

会将包下载到一个全局的位置

只有需要使用某个全局命令时,才需要进行全局安装

# 下面的 install 可以替换为 i
npm install -g 包名
npm install -g 包名@版本号

卸载

本地卸载

卸载本地的安装包

# 下面的 uninstall 均可替换为 un
npm uninstall 包名

全局卸载

卸载全局的安装包

# 下面的 uninstall 均可替换为 un
npm uninstall -g 包名

查看包信息

查看包所有的版本

# view 可以替换为 v
npm view 包名 versions