npm

常用命令

  • 清理缓存:npm cache clean --force

登录使用

  • 登录:npm login

  • 显示登录用户名:npm whoami

查看配置

显示基本配置:

npm config list
1

显示所有配置:

npm config ls -l
1

查看全局node包

npm root -g
1

设置 npm 的 registry

原 npm 地址:

npm config set registry http://registry.npmjs.org
1

查看线上 npm 包所有信息

  • npm api接口地址:https://registry.npmjs.org/<packages>

  • 淘宝镜像接口地址:https://registry.npmmirror.com/<packages>

  • 返回json数据,里面有所有线上的版本信息

查看包文件版本信息:https://registry.npmjs.org/@lc-imooc-cli-dev/coreopen in new window

修改-g全局安装路径

查看当前路径

npm config ls
1

修改路径

npm config set prefix "D:\node"
1

理解 npm link:

  • npm link:将当前项目链接到 node 全局 node_modules 中作为一个库文件,并解析 bin 配置创建可执行文件
  • npm link your-lib:将当前项目中 node_modules 下指定的库文件链接到 node 全局 node_modules 下的库文件

理解 npm unlink:

  • npm unlink:将当前项目从 node 全局 node_modules 中移除
  • npm unlink your-lib:将当前项目中的库文件依赖移除

连接本地脚手架

cd your-cli-dir
npm link
1
2

连接本地库文件

cd your-lib-dir
npm link

cd your-cli-dir
npm link your-lib

1
2
3
4
5
6

取消连接本地库文件

cd your-lib-dir
npm unlink

cd your-cli-dir

# link存在
npm unlink your-lib

# link不存在
rm -rf node_modules
npm install -S your-lib

1
2
3
4
5
6
7
8
9
10
11
12

使用 npm 私库包

包分为两种:

  1. 全局安装的包。比如hzxdf-cli脚手架工具。
  2. 本地使用的包。比如@xdf/xpots工具集。

1.全局安装的包

使用方法:

npm install hzxdf-cli -g --registry http://localhost:8082/
1

后面加上--registry http://localhost:8082/表示使用这个地址,去下载hzxdf-cli这个包。这种方法简单直接,且不会影响到全局npm registry的配置,但略显繁琐,推荐使用在只需一次安装的全局包上。

2.本地使用的包

使用方法:

# 需要在项目中添加一个`.npmrc`文件,文件内容是下面这行代码

@xdf:registry=http://localhost:8082/
1
2
3

这行代码的目的也是设置registry,意思是所有@xdf这个组织下面的包,都到我们自己的http://localhost:8082/服务器上去下载。这种做法也不会影响到自己全局的npm配置。

添加.npmrc文件之后,后面的玩法都是一样的,使用npmyarn安装需要的包到package.json文件中。

yarn add @xdf/xpots
1

重要

.npmrc文件,需要和代码一起提交到GitLab上,因为CI/CD也需要使用到其中的配置,请不要在.gitignore中将它过滤掉。

发布包到 npm 私库

当你封装了一个好用的工具,想要分享给团队小伙伴时,你可以用到这个发布功能。

1. 对指定文件夹进行初始化。(如果已有可以省略这一步)

npm init --scope=xdf

# --scope=xdf 会在package.json的name属性中,自动添加@xdf组织名
1
2
3

在这个文件中完成相关的功能代码。

注意配置好package.json中最重要的几个属性:

  • name 包的名称,使用@xdf开头
  • version 包的版本
  • main 包的入口文件

2.准备发布,需要设置npmregistry(推荐使用nrm管理本地npmregistry,方便任意切换。)

先查看npm当前设置的registry是什么:

npm config list

# metrics-registry 就是当前指向的registry
1
2
3

修改成我们自己服务器的registry:(使用完之后,记得切回自己常用的 registry)

npm set registry http://localhost:8082/
1

3. 修改好之后,去创建或验证用户:

npm adduser --scope=xdf

# --scope=xdf 的意思是进入xdf这个组织
1
2
3

如果没有账户,会自动注册,只需取一个用户名,设一个密码和邮箱即可进入,没有过多的验证。

4. 将当前这个包,发布到组织中:

npm publish --access=public
1

发布成功后

进入 http://localhost:8082/open in new window 中查看你最新发布的包。

删除已经发布的包

npm unpublish <package> --force
1

npm init

直接使用npm init <name>创建自己的项目。

比如:

npm init egg
1

需要再npm中创建了一个create-egg项目。

Last Updated: 2023/1/28 16:25:34
Contributors: licong96, 黎聪