npm
常用命令
- 清理缓存:
npm cache clean --force
登录使用
登录:
npm login
显示登录用户名:
npm whoami
查看配置
显示基本配置:
npm config list
显示所有配置:
npm config ls -l
查看全局node包
npm root -g
设置 npm 的 registry
原 npm 地址:
npm config set registry http://registry.npmjs.org
查看线上 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
修改路径
npm config set prefix "D:\node"
npm link
理解 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
2
连接本地库文件
cd your-lib-dir
npm link
cd your-cli-dir
npm link your-lib
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
2
3
4
5
6
7
8
9
10
11
12
使用 npm 私库包
包分为两种:
- 全局安装的包。比如
hzxdf-cli
脚手架工具。 - 本地使用的包。比如
@xdf/xpots
工具集。
1.全局安装的包
使用方法:
npm install hzxdf-cli -g --registry http://localhost:8082/
后面加上--registry http://localhost:8082/
表示使用这个地址,去下载hzxdf-cli
这个包。这种方法简单直接,且不会影响到全局npm registry
的配置,但略显繁琐,推荐使用在只需一次安装的全局包上。
2.本地使用的包
使用方法:
# 需要在项目中添加一个`.npmrc`文件,文件内容是下面这行代码
@xdf:registry=http://localhost:8082/
2
3
这行代码的目的也是设置registry
,意思是所有@xdf
这个组织下面的包,都到我们自己的http://localhost:8082/
服务器上去下载。这种做法也不会影响到自己全局的npm
配置。
添加.npmrc
文件之后,后面的玩法都是一样的,使用npm
或yarn
安装需要的包到package.json
文件中。
yarn add @xdf/xpots
重要
.npmrc
文件,需要和代码一起提交到GitLab上,因为CI/CD也需要使用到其中的配置,请不要在.gitignore
中将它过滤掉。
发布包到 npm 私库
当你封装了一个好用的工具,想要分享给团队小伙伴时,你可以用到这个发布功能。
1. 对指定文件夹进行初始化。(如果已有可以省略这一步)
npm init --scope=xdf
# --scope=xdf 会在package.json的name属性中,自动添加@xdf组织名
2
3
在这个文件中完成相关的功能代码。
注意配置好package.json
中最重要的几个属性:
name
包的名称,使用@xdf
开头version
包的版本main
包的入口文件
2.准备发布,需要设置npm
的registry
。(推荐使用nrm管理本地npm
的registry
,方便任意切换。)
先查看npm
当前设置的registry
是什么:
npm config list
# metrics-registry 就是当前指向的registry
2
3
修改成我们自己服务器的registry
:(使用完之后,记得切回自己常用的 registry)
npm set registry http://localhost:8082/
3. 修改好之后,去创建或验证用户:
npm adduser --scope=xdf
# --scope=xdf 的意思是进入xdf这个组织
2
3
如果没有账户,会自动注册,只需取一个用户名,设一个密码和邮箱即可进入,没有过多的验证。
4. 将当前这个包,发布到组织中:
npm publish --access=public
发布成功后
进入 http://localhost:8082/open in new window 中查看你最新发布的包。
删除已经发布的包
npm unpublish <package> --force
npm init
直接使用npm init <name>
创建自己的项目。
比如:
npm init egg
需要再npm中创建了一个create-egg
项目。