创建并发布一个npm 包

7,188 阅读2分钟

1 注册 npm 账号

  • 第一步 www.npmjs.com/
  • 第二步 账号、密码登录
  • 第三部 邮箱验证(会给注册的邮箱发一个验证的按钮,点击验证即可)

2 终端登录

  • 第一步 打开终端
  • 第二步 输入以下代码
npm adduser

或者

npm login
  • 第三步 根据提示分别输入usernamepassword 和 email

填写正确会得到提示 你会得到提示:Logged in as bamblehorse to scope @username on registry.npmjs.org/.

  • 第四步 确保 npm 源正确

截屏2021-07-22 下午5.44.51.png

3 开始开发第一个包

  • 第一步 建立一个文件夹 myFirst
  • 第二步 进入文件夹新建一个空的 package.json 文件
  • 第三步 执行 npm publish 报错信息如下

截屏2021-07-22 下午5.49.00.png

在 package.json 文件中给我们的包起个名字

{
    "name": "@自己的username/myFirst"
}

Tips: npm 用户名加到了包的开头,通过使用 @自己的username/myFirst 代替 myFirst,会创建一个在自己用户名 scope 下的一个包。这个叫做 scoped package

再次尝试 npm publish 报错信息如下

截屏2021-07-22 下午5.55.42.png

每个 npm 包都需要一个版本,以便开发人员在安全地更新包版本的同时不会破坏其余的代码。

{
    "name": "@自己的username/myFirst",
    "version": "1.0.0"
}

再次执行 npm publish

截屏2021-07-22 下午6.00.59.png

Scoped packages 会被自动发布为私有包,改变 npm 发布命令 npm publish --access=public

1.jpg

我们收到一个 + 号,以及包的名称和版本号,很开心木有木。npm 上也能收到了~~

截屏2021-07-22 下午6.07.jpg

4 Scope not found 报错信息处理

报错信息为: Scope not fond,这是由于包名 '@xxx/xxx' 导致的,如果包名是 '@'开头,需要到 npm 官网先创建一个组织,具体步骤如下:

1710983623329.png

1、进入个人中心,点击 + Add Organization

1710986017000.png

2、进入创建页面,输入组织名称,不需要添加 '@' 符号,如果组织名称已经存在,页面会有红色文字提示信息,点击 Creat 创建。

1710986251961.png

3、再次执行 npm publish --access=public 就成功了

image.png

5 丰富我们的包

修改 package.json 文件

  • description:包的简介
  • repository:可以写上自己的 GitHub 地址
  • license:MIT 认证
  • main:包的入口文件,位置在文件夹的根目录
  • keywords:添加一些关键词利于包的搜索(数组格式)

增加 index.js 包的入口文件,也可以创建一个 GitHub 链接,增加 readme.md 文件,让大家更好的知道包是怎么使用的。