nodejs使用require导入npm包,开发依赖和生产依赖 ,全局安装
✅ 一、Node.js 中使用 require()
导入 npm 包
js
// 导入第三方包(例如 axios)
const axios = require('axios');
// 使用
axios.get('https://api.example.com').then(res => {
console.log(res.data);
});
⚠️ 注意:这是 CommonJS 的导入方式。如果你使用的是 ESModule 模式,需使用
import
。
📦 二、npm 的两种依赖类型
在项目开发中,依赖分为两种:
类型 | 命令 | 写入位置 | 用途 |
---|---|---|---|
生产依赖 | npm install <包名> |
dependencies |
项目运行必须依赖的包(如 express、axios) |
开发依赖 | npm install <包名> --save-dev 或 -D |
devDependencies |
项目开发阶段使用的工具包(如 eslint、webpack、babel) |
✅ 举例:
bash
npm install express # 生产依赖
npm install eslint --save-dev # 开发依赖
生成的 package.json
会这样区分:
json
{
"dependencies": {
"express": "^4.18.2"
},
"devDependencies": {
"eslint": "^8.50.0"
}
}
🌐 三、全局安装(global install)
有些工具类包我们需要全局安装,例如 nodemon
、eslint
CLI、typescript
等。
✅ 全局安装命令:
bash
npm install -g <包名>
例如:
bash
npm install -g nodemon
安装完成后可直接在命令行中使用:
bash
nodemon app.js
📁 全局安装路径:
你可以查看全局安装路径:
bash
npm root -g
全局安装通常用于:
- 命令行工具
- 多项目共享工具
- 系统级运行环境
🔄 四、依赖作用范围总结
安装方式 | 命令 | 作用范围 | 使用场景 |
---|---|---|---|
本地安装 | npm install axios |
当前项目目录 | 项目代码中通过 require() 导入 |
开发依赖 | npm install eslint -D |
当前项目目录,仅开发用 | 不打包进生产环境 |
全局安装 | npm install -g typescript |
全局系统环境 | CLI 工具,全局命令 |
🧠 附加:判断一个包是全局安装还是本地安装?
- 全局安装:可以在终端全局执行,不需
node_modules
存在; - 本地安装:只能在当前项目代码中
require()
使用。