npm i --registry=http://registry.m.jd.com- 使用 lerna 将 packages 下各包依赖进行 link
npm run bootstrap- 添加内部包依赖
例如
@jhooks/useA需要依赖@jhooks/useB,执行以下命令:
npm run add @jhooks/useB --scope=@jhooks/useA1.此命令会在
@jhooks/useA的package.json中声明依赖@jhooks/useB,同时会在@jhooks/useA的node_modules中创建@jhooks/useB这个模块,注意该模块是 link 到项目的 @jhooks/useB
2.运行这个命令前请确保运行过
npm run bootstrap或者lerna bootstrap。
确认是否已经登录 jnpm,如登录,直接第三步
-
安装 jnpm
$ npm install @jd/jnpm -g --registry=http://registry.m.jd.com -
确认当前在内网
- 首次发包
$ jnpm adduser --registry=http://registry.m.jd.com --scope=@jd - jnpm 登陆
$ jnpm login --registry=http://registry.m.jd.com --scope=@jd - 确认当前用户名为自己
-
转换,如果是 ts 写的代码,转换成 js,进入项目 packages 里面执行
$ npm run build:ts -
在仓库目录执行如下命令使用 lerna 发布
$ npm run publish
- 确认当前 hooks 的名字,也就是目录名,一旦发布,想删除需要联系中台管理员(麻烦!)
- 每一个组件包中的 package.json 无需再次安装 react 相关依赖,最外层的 package.json 已经有依赖了,不然运行 jest 会报错。 具体原因:https://segmentfault.com/a/1190000022435060