nodejs的包管理工具介绍,npm的介绍和安装,npm的初始化包 ,搜索包,下载安装包

nodejs的包管理工具介绍,npm的介绍和安装,npm的初始化包 ,搜索包,下载安装包


🧰 一、Node.js 的包管理工具有哪些?

工具 简介 是否默认 特点
npm Node.js 官方的包管理工具(Node Package Manager) ✅ 默认内置 功能全、生态最大
yarn Facebook 开发的包管理工具 ❌ 手动安装 更快、更严格的依赖锁机制
pnpm 快速、节省空间的新型包管理器 ❌ 手动安装 使用软链接实现多项目共享依赖,性能优秀

通常初学者或主流项目仍以 npm 为主。


📦 二、npm 简介

✅ 什么是 npm?

  • npm 是 Node.js 官方的包管理器;
  • 用于:
    • 下载/安装 JavaScript 包(library);
    • 管理项目依赖;
    • 发布自己的模块到 npm 上;
    • 运行脚本任务(如打包、测试)。

🧑‍💻 三、npm 安装和使用前提

✅ 安装方式:

npm 是 Node.js 的一部分,只需安装 Node.js 即可自动获取 npm。

👉 安装 Node.js:

安装完成后,可验证是否安装成功:

bash 复制代码
node -v       # 查看 Node.js 版本
npm -v        # 查看 npm 版本

🛠️ 四、npm 初始化项目(创建 package.json

在你的项目目录下运行:

bash 复制代码
npm init

会逐步引导你填写信息,如项目名称、版本号、入口文件等。

如果你想跳过交互、使用默认配置:

bash 复制代码
npm init -y

这会直接生成一个标准的 package.json 文件,类似:

json 复制代码
{
  "name": "my-app",
  "version": "1.0.0",
  "main": "index.js",
  "license": "ISC"
}

🔍 五、npm 搜索包

✅ 在线搜索:

  • 官方网站:https://www.npmjs.com/
  • 输入关键词即可查看对应包的文档、版本、安装命令等。

✅ 命令行搜索(不太常用):

bash 复制代码
npm search axios

📥 六、npm 安装包

✅ 安装到项目(默认是生产依赖):

bash 复制代码
npm install axios
# 或缩写
npm i axios

此操作将:

  • 下载 axiosnode_modules/
  • 将依赖写入 package.jsondependencies 字段
  • 记录具体版本到 package-lock.json

✅ 安装开发依赖:

bash 复制代码
npm install eslint --save-dev
# 或
npm i eslint -D

依赖写入 devDependencies,仅用于开发环境。


🔄 七、常见安装方式总结

命令 说明
npm install 安装项目中所有依赖(根据 package.json
npm install <包名> 安装生产依赖
npm install <包名> --save-dev 安装开发依赖
npm uninstall <包名> 卸载依赖
npm update 更新依赖
npm list 查看已安装依赖

📁 八、npm 下载后的文件结构

复制代码
project/
├── node_modules/      # 安装的所有依赖包
├── package.json       # 项目配置文件
├── package-lock.json  # 锁定版本,确保团队一致
└── index.js

✅ 示例:完整初始化 + 安装流程

bash 复制代码
mkdir my-app
cd my-app
npm init -y
npm install express
npm install eslint --save-dev
相关推荐
昔冰_G7 分钟前
解锁webpack:对html、css、js及图片资源的抽离打包处理
前端·javascript·css·webpack·npm·html·打包
萌萌哒草头将军14 分钟前
🚀 REST API 还是 ✈️ GraphQL ❓
前端·vue.js·react.js
just小千27 分钟前
重学React(一):描述UI
前端·react.js·ui
fakaifa1 小时前
【最新版】沃德代驾源码全开源+前端uniapp
前端·小程序·uni-app·开源·php·沃德代驾·代驾小程序
泯泷1 小时前
【SHA-2系列】SHA256 前端安全算法 技术实践
javascript·安全·node.js
清羽_ls1 小时前
leetcode-位运算
前端·算法·leetcode·位运算
李菠菜1 小时前
利用Nginx实现高性能的前端打点采集服务(支持GET和POST)
linux·前端·nginx
lilye661 小时前
精益数据分析(6/126):深入理解精益分析的核心要点
前端·人工智能·数据分析
Apifox1 小时前
Apifox 4月更新|Apifox在线文档支持LLMs.txt、评论支持使用@提及成员、支持为团队配置「IP 允许访问名单」
前端·后端·ai编程
Jolyne_1 小时前
搭建公司前端脚手架
前端·架构·前端框架