如何将项目发布到npmjs仓库

有时候,我们希望将项目里的模块提升为公共模块,以便其他项目也能使用。在前端可以将模块发布到npm仓库,这样所有项目都可以通过 npm install youProject 使用模块了。

这个过程很简单,具体如下:

发布流程

注册npm账户

进入npm网站 https://www.npmjs.com/ ,点击右上角的 join in,进行注册。

注册完之后一定要登录邮箱,进行校验激活(进入邮箱,点击链接即可)。

注意:校验成功后npm网站上方,不会显示警告,才能进行后续操作。

登录npm账户

执行 npm adduser。如果登录过可以执行npm login

更多命令参考 https://docs.npmjs.com/cli-documentation/

发布项目

发布项目之前,请阅读下面的项目规范

进入项目目录,执行 

npm publish

 已发布的项目 注意修改版本号,保持更高即可。

项目规范

只有npm项目才可以发布。可以进入你的项目目录,运行 npm init 。

然后 修改项目的package.json配置,关键是以下几项:

"name": "your-module-name",
"version": "1.0.1",
"files": ["src"],
"main": "src/test.js",

 name 和 version

分别是你的项目名称和版本号

"name": "your-module-name",
"version": "1.0.1",

 这样配置发布到npm后,别人就可以这样下载你的项目到node_modules中了:

npm install -S your-module-name@1.0.1

 files和main

这是两个最重要的配置:

 main指的是 当引入仅写模块名时,实际引入的是哪个文件 如本例中:

"main": "src/test.js",

 表示当 import "your-module-name"  时,实际引入的是: import "your-module-name/src/test.js"

 files指的是 上传到npm,以及别人下载具体包含哪些文件,

"files": ["src"],

表示 npm install your-module-name 这个项目时 只会下载 src/ 目录下的内容。 npm publish时只上传src目录下的内容

进入node_modules/your-module-name 目录,发现只有src,其他代码均未下载

关闭private

很多项目(如 vue-cli 生成的项目)默认都会在package.json中加入如下配置:

"private": true,

 这表示项目是私有的,不会被作为公共依赖发布。一定要删除这个配置!

 

好了,开始操作吧,将你的模块发到公共npm 仓库!

 

 

原文地址:https://www.cnblogs.com/zhwc-5w4/p/11913575.html