创建现代npm包的最佳实践

2022-10-27 15:41:46 浏览数 (1)

本文首发于微信公众号:大迁世界, 我的微信:qq449245884,我会第一时间和你分享前端行业趋势,学习途径等等。 更多开源作品请看 GitHub https://github.com/qq449245884/xiaozhi ,包含一线大厂面试完整考点、资料以及我的系列文章。

技术一直在变化,我们的流程和做法也需要跟上这些变化。因此,虽然npm已经有12年的历史了,但围绕 npm 包创建的做法应该更现代。

在这节课中,我们使用现代最佳实践(截至2022年)一步一步地创建一个npm包。首先学习如何创建一个npm包,这样你就可以熟悉构建和发布一个包到 npm 注册表。

然后,再学习如何通过建立测试框架、持续集成和部署管道、安全检查以及发布的自动语义版本管理,来制作一个更健壮、可用于生产的npm包。

简单的npm包示例

我们先通过一个简单的例子来熟悉创建和发布npm包的过程。

创建项目
  1. 创建一个 GitHub 仓库: https://github.com/new
  2. 克隆本地的 repo。 例如:git clone https://github.com/snyk-labs/...
  3. 打开你的终端,进入到克隆的项目文件夹。 例如:cd simple-npm-package
  4. 运行 npm init -y 来创建 package.json 文件。注意:如果克隆了示例仓库,就不需要做这一步。
  5. 在package.json 取一个名称,对应 name 字段
  6. 为该包编写你的代码
创建 npm 账户

为了能够让我们的 npm 包供他人使用,需要一个npm账户。

  • 通过 https://www.npmjs.com/signup 注册
  • 为了提高安全性,请在您的npm账户上启用2FA:https://docs.npmjs.com/config...
  • 使用 npm login 命令在终端中用你的 npm账户登录,并按照屏幕上的指示操作。
代码语言:javascript复制
> npm login
npm notice Log in on https://registry.npmjs.org/
Username: clarkio
Password:
Email: (this IS public) <email address>
npm notice Please use the one-time password (OTP) from your authenticator application
Enter one-time password from our authenticator app: <OTP>
Logged in as clarkio on https://registry.npmjs.org/.

如何发布 npm 包

一旦你有了一个npm项目和一个npm账户,你就可以把你的npm包发布到公开的官方npmjs注册表上,让其他人可以使用。以下是你要遵循的步骤,在执行之前检查将发布的内容,然后运行实际的发布过程。

  1. 在终端,运行 npx npm-packlist 来查看将被包含在发布版本的软件包中的内容。

这可以确保我们没有遗漏任何源代码文件,这些文件是软件包正常运行所需要的。这也是一个好的做法,以确保我们不会意外地将敏感信息泄露给公众,如带有数据库凭证或API密钥的本地配置文件。

代码语言:javascript复制
> npx npm-packlist
LICENSE
index.js
package.json
README.md

在终端,运行npm publish --dry-run,看看实际运行命令时将会做什么。

代码语言:javascript复制
> npm publish --dry-run
npm notice
npm notice 


	

0 人点赞