Npm(Node Package Manager)是一个JavaScript编程语言的包管理器,用于Node.js。它允许用户安装、共享和管理具有重复使用价值的代码,这些代码通常被称为"包"。以下是V哥整理的使用Npm的使用教程,收藏起来以备急用之需:
1. 基本操作部分
安装Node.js和Npm
- 访问Node.js官网下载安装包。
- 根据你的操作系统选择相应的安装程序并安装。
- 安装完成后,打开终端或命令提示符,输入
node -v
和npm -v
来检查Node.js和Npm是否安装成功。
使用Npm安装包
- 全局安装:安装包到全局,这样所有项目都可以使用。
bash
npm install -g package_name
- 本地安装 :安装包到当前项目的
node_modules
目录,通常用于项目依赖。
bash
npm install package_name
管理项目依赖
- 查看已安装的包:
bash
npm list
- 查看全局安装的包:
bash
npm list -g
管理package.json
- 初始化一个新的package.json文件:
bash
npm init
这会引导你创建一个package.json
文件,你可以按提示填写信息或直接按回车接受默认值。
- 添加依赖到package.json:
bash
npm install package_name --save
这会将包添加到dependencies
中。
- 添加开发时依赖到package.json:
bash
npm install package_name --save-dev
这会将包添加到devDependencies
中。
脚本
在package.json
文件中,你可以定义自定义脚本,然后在命令行中运行它们:
json
"scripts": {
"start": "node app.js",
"test": "mocha **/*.test.js"
}
然后,你可以使用以下命令来运行这些脚本:
bash
npm start
npm test
更新和卸载包
- 更新包:
bash
npm update package_name
- 卸载包:
bash
npm uninstall package_name
Npm配置
- 查看Npm配置:
bash
npm config list
- 设置配置:
bash
npm config set key value
其他常用命令
- 查看Npm帮助文档:
bash
npm help
- 查看特定命令的帮助:
bash
npm help command_name
2. Npm进阶使用
使用Npm脚本
Npm允许你在package.json
文件中定义自定义脚本,这些脚本可以通过npm run命令执行。这可以简化你的开发流程,例如:
- 自动化测试
- 构建过程
- 启动开发服务器
使用npm版本控制
Npm可以帮你管理项目的版本:
- 更新到最新版本:
bash
npm update
- 更新到特定版本:
bash
npm update package_name@version
- 发布新版本:
bash
npm version patch # 增加修订号
npm version minor # 增加次版本号
npm version major # 增加主版本号
使用npm忽略文件
.npmignore
文件允许你指定Npm在打包时应该忽略哪些文件和目录。这类似于Git的.gitignore
文件。
使用npm缓存
Npm使用缓存来提高安装速度。你可以查看、清理或配置缓存:
- 查看缓存目录:
bash
npm cache ls
- 清理缓存:
bash
npm cache clean
使用npm访问远程仓库
默认情况下,Npm使用npmjs.org作为包的注册表。但你可以通过配置使用其他远程仓库:
- 设置默认的包注册表:
bash
npm config set registry https://registry.npmjs.org/
使用npm审计安全性问题
Npm提供了一个安全审计工具来帮助识别和修复安全漏洞:
- 运行安全审计:
bash
npm audit
使用npm打包和发布
当你准备发布你的包时,你可以使用以下命令:
- 打包你的项目:
bash
npm pack
- 发布你的包到npm仓库:
bash
npm publish
使用npm访问和贡献开源项目
Npm也是与GitHub等代码托管服务集成的,你可以轻松地为开源项目贡献代码:
- 查看项目的依赖:
bash
npm view package_name dependencies
- 查看项目的维护者:
bash
npm owner ls package_name
使用npm配置代理
如果你在公司或学校网络后面,可能需要配置代理来使用npm:
- 设置HTTP代理:
bash
npm config set proxy http://proxyuser:proxypwd@proxy.server.com
- 设置HTTPS代理:
bash
npm config set https-proxy https://proxyuser:proxypwd@proxy.server.com
3. 高级特性
让我们继续深入了解一些Npm的高级特性和使用技巧:
使用Npm Workspaces
如果你的项目包含多个包或模块,可以使用Npm Workspaces来简化开发流程。这允许你在一个package.json
文件中管理多个项目。
- 初始化Workspaces:
bash
npm init workspace
- 添加Workspace:
bash
npm workspace package-name add package
使用Npm CI
如果你在持续集成(CI)环境中使用Npm,npm ci
命令可以提供更快的安装速度,并且只安装package-lock.json
或npm-shrinkwrap.json
中列出的依赖。
- 使用CI安装依赖:
bash
npm ci
使用Npm Outdated
要检查哪些包已经过时,可以使用npm outdated
命令:
- 列出所有过时的包:
bash
npm outdated
使用Npm Link
如果你正在开发多个包,并且想要在它们之间共享代码,可以使用npm link
来创建符号链接:
- 创建全局符号链接:
bash
npm link
- 链接到其他包:
bash
npm link package-name
使用Npm Deprecate
如果你需要弃用一个包,可以使用npm deprecate
命令:
- 弃用特定版本的包:
bash
npm deprecate package_name@version "自定义弃用理由"
使用Npm Access
npm access
命令可以用来管理包的访问权限:
- 设置包的访问级别:
bash
npm access public package_name
npm access restricted package_name
使用Npm Team
如果你的组织有多个团队,可以使用npm team
来管理团队的权限:
- 列出团队成员:
bash
npm team ls package_name:team_name
- 添加成员到团队:
bash
npm team add package_name:team_name user_name
使用Npm Org
如果你的项目属于一个组织,可以使用npm org
来管理组织:
- 列出组织成员:
bash
npm org ls org_name
使用Npm Star和Want
Npm允许用户对包进行点赞(star)和想要(want),这可以帮助其他用户发现有用的包:
- 点赞一个包:
bash
npm star package_name
- 取消点赞一个包:
bash
npm unstar package_name
使用Npm完成命令
Npm提供了一个命令自动补全功能,可以通过以下命令安装:
- 安装命令自动补全:
bash
npm completion >> ~/.bashrc
这些高级特性和命令可以帮助你更有效地使用Npm,无论是在开发、测试、部署还是维护Node.js项目。随着你对Npm的进一步使用,你将能够发现更多有用的特性和命令。
4. 最后
以上是 Npm 命令的使用介绍,命令这玩意儿,用多了就熟,长时间不用就会忘了,再正常不过了,所以,收藏起来,用时再查。完事儿。