当前位置: 首页 > news >正文

npm 命令入门指南(前端小白版)

npm 命令入门指南(前端小白版)


1. npm 是什么?
  • Node Package Manager:Node.js 的包管理工具,用于安装、分享 JavaScript 工具/库。
  • 核心功能
    • ✅ 安装第三方库(如 React、Vue)
    • ✅ 管理项目依赖
    • ✅ 发布自己的插件

2. 最常用命令
命令作用示例
npm init创建 package.json(项目说明书)npm init -y(快速创建)
npm install安装依赖包npm install lodash
npm run运行自定义脚本npm run dev
npm update更新依赖包npm update react
npm publish发布自己的包npm publish

3. npm 仓库类型
仓库类型说明地址
官方仓库默认公共库(全球最大)npmjs.com
镜像仓库国内加速镜像(推荐)淘宝镜像 registry.npmmirror.com
私有仓库企业内部专用Verdaccio / Nexus

4. 如何更换仓库?
(1) 临时切换镜像(单次生效)
npm install lodash --registry=https://registry.npmmirror.com
(2) 永久切换镜像
npm config set registry https://registry.npmmirror.com
(3) 恢复官方仓库
npm config set registry https://registry.npmjs.org
(4) 验证当前仓库
npm config get registry

5. 提交插件到 npm 仓库
步骤 1:注册 npm 账号

👉 访问 npmjs.com/signup

步骤 2:登录 npm
npm login  # 输入用户名/密码/邮箱
步骤 3:初始化插件项目
mkdir my-plugin && cd my-plugin
npm init -y  # 生成 package.json
步骤 4:编写代码
// index.js
module.exports = () => console.log("Hello Plugin!");
步骤 5:发布!
npm publish  # 自动上传到 npm 仓库

注意

  • 包名在 package.json"name" 中定义(需全网唯一)
  • 更新版本:npm version patch + npm publish

常见问题

  1. 安装卡住? → 换淘宝镜像 npm config set registry https://registry.npmmirror.com
  2. 发布失败? → 检查包名是否重复或未登录
  3. 插件汉化? → 在 package.json 添加中文描述字段

小白学习路径

  1. npm install 装几个库(如 axios
  2. 尝试创建 package.json
  3. 发布一个测试插件(名字加后缀如 my-plugin-test123

官方文档:npm Docs
中文资源:npm 淘宝镜像

📌 npm 全局安装位置、缓存位置及查看方法(完整指南)


🔍 1. 全局安装位置

📂 默认路径

操作系统全局安装路径
Windows%AppData%\npm\node_modules
macOS/Linux/usr/local/lib/node_modules/usr/lib/node_modules

🔎 如何查看当前全局安装路径?

npm root -g

输出示例(Windows):

C:\Users\你的用户名\AppData\Roaming\npm\node_modules

🔎 如何查看全局安装的包?

npm list -g --depth=0

输出示例:

/usr/local/lib
├── npm@10.2.3
├── nrm@1.2.5
└── yarn@1.22.19

🔍 2. 全局可执行文件位置

全局安装的包的可执行文件(如 create-react-app)会被链接到以下目录:

操作系统可执行文件路径
Windows%AppData%\npm
macOS/Linux/usr/local/bin

🔎 如何查看全局可执行文件路径?

which npm          # macOS/Linux
where npm          # Windows

🔍 3. npm 缓存位置

npm 下载的包会缓存到以下目录:

操作系统缓存路径
Windows%AppData%\npm-cache
macOS/Linux~/.npm

🔎 如何查看当前缓存路径?

npm config get cache

输出示例:

C:\Users\你的用户名\AppData\Roaming\npm-cache

🔎 如何查看缓存内容?

npm cache ls

输出示例(部分):

~/.npm/_cacache/content-v2/sha512/xx/xx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

🔍 4. 实用命令汇总

需求命令
查看全局安装路径npm root -g
查看全局安装的包npm list -g --depth=0
查看全局可执行文件路径which <命令> (Linux/macOS) / where <命令> (Windows)
查看缓存路径npm config get cache
查看缓存内容npm cache ls
清理缓存npm cache clean --force
卸载全局包npm uninstall -g <包名>

🚨 常见问题排查

  1. 权限问题(macOS/Linux)
    如果全局安装失败,可能是权限不足,尝试:

    sudo chown -R $(whoami) /usr/local/lib/node_modules
    

    或使用 npx 临时运行(无需全局安装)。

  2. 缓存占用过大
    定期清理缓存:

    npm cache clean --force
    
  3. 路径冲突
    如果 npm root -gwhich npm 路径不一致,可能是环境变量 NODE_PATH 配置错误,检查:

    echo $NODE_PATH
    

🎯 总结

  • 全局安装路径npm root -g
  • 可执行文件路径which <命令>where <命令>
  • 缓存路径npm config get cache
  • 缓存清理npm cache clean --force

掌握这些命令后,你可以轻松管理 npm 的全局包和缓存,避免磁盘空间浪费和路径冲突问题!

http://www.lryc.cn/news/579446.html

相关文章:

  • 以太坊 Legacy 交易和 EIP-1559 交易
  • C++ 标准模板库算法之 transform 用法
  • RAG从入门到高阶(二):Retrieve-and-Rerank
  • 开源无广告面板mdserver-web:替代宝塔实现服务器轻松管理
  • NCCL的基本使用和常用通信算法源码分析
  • 洛谷-循环结构(1)
  • 前端框架中注释占位与Fragment内容替换的实现与优化
  • 网络基础(3)
  • Spring 6 源码深度掘金:66+核心原理与高频面试攻坚指南
  • 【科研绘图系列】基于R语言的种质资源评分相关性分析与可视化教程
  • 【零基础学AI】第21讲:TensorFlow基础 - 神经网络搭建入门
  • 从生活实例看:点积、内积和矩阵乘法如何玩转机器学习
  • 【maven仓库搜索下载工作流程】
  • 后端 Maven打包 JAR 文件、前端打包dist文件、通过后端服务访问前端页面、Nginx安装与部署
  • 办公文档批量打印器 Word、PPT、Excel、PDF、图片和文本,它都支持批量打印。
  • Flask 遇到了 AttributeError: ‘Babel‘ object has no attribute ‘localeselector‘ 怎么解决
  • TinyWebserver学习(8)-定时器
  • 在 Jetson Orin 开发套件上使用 Hardware Encoder / Decoder 构建 FFmpeg
  • 仿真软件介绍 COMSOL Multiphysics 或 ANSYS Fluent 等 MATLAB OpenFOAM,和在化学上的应用实例
  • 2025年6月一区-田忌赛马优化算法Tianji’s horse racing optimization-附Matlab免费代码
  • Springboot3整合ehcache3缓存--XML配置和编程式配置
  • 【PyCharm 2025.1.2配置debug】
  • 【vmware虚拟机使用】 开始安装centos7操作系统
  • Navicat Premium 12连接Oracle时提示oracle library is not loaded的问题解决
  • 分布式部署下如何做接口防抖---使用分布式锁
  • macOS 26正式发布,全新Liquid Glass设计语言亮相
  • 旅游管理实训室:支撑实践教学的核心载体
  • 5118 API智能处理采集数据教程
  • 项目——视频共享系统测试
  • 【C++】状态模式