npm发布包教程

248 阅读2分钟

背景

  • 目前多项目迭代总有些公用的组件去重复使用,这块使用git进行导入的方式不是很好管理,所以使用了npm包上传的方式。

期间遇到的问题

  • 不能使用淘宝镜像源,必须是官方默认的镜像源才可以。
  • 下载的时候,也只能使用官方默认的镜像源才可以。
  • 有个比较恶心的问题是,npm上传不需要代理,但是npm下载是需要代理的,而且npm使用的不是控制台的代理,而是npm自己的代理,必须使用如下命令才行。(这块是简版的,如果各自的命令支持不了,可以直接去搜索npm配置代理就行)
# 假设本地代理端口为8080
npm config set proxy "http://localhost:8889"
npm config set https-proxy "http://localhost:8889"

# 有用户密码的代理
npm config set proxy "http://username:password@localhost:8889"
npm confit set https-proxy "http://username:password@localhost:8889"

真正使用的步骤

npm发布流程

  1. 注册一个npm账号 www.npmjs.com/
  2.  初始化一个项目:npm init
  3. 创建一个index.js文件
  4. package.json 中 main: "index.js" 指向导出的入口文件 index.js
  5. npm adduser 输入自己的 npm 账号密码
  6. npm publish --access=public,每次记得更改版本号

删除不想保留的版本

npm unpublish 名称@版本号

npm unpublish 名称 --force 强制删除所有的版本

以上仅限于没有人下载的该版本时使用,一旦被下载,就只能设置为

npm deprecate js-sls-logger-v3@1.0.1 deprecate

需要测试怎么办?怎么可以不频繁的发布包

  1. 在npm包所在的目录下面执行命令:npm link
  2. 在使用的项目下面执行命令: npm link xxx 对应上面的包名,这个时候就部署上了
  3. 完成测试后,先在使用npm包项目的文件目录下面接触链接 npm unlink xxx
  4. 在npm所在的文件目录下面去除全局链接 npm unlink -g(这块一定要注意加上-g,否则会报错,让你后面加包名)