首页 >web前端 >js教程 >如何将包发布到 npm:分步指南

如何将包发布到 npm:分步指南

Linda Hamilton
Linda Hamilton原创
2024-11-19 15:55:03300浏览

在 NPM(Node 包管理器)上发布包不仅是与其他开发人员分享您的工作的一种方式,也是在开发社区中脱颖而出的一种方式。想象一下,创建一个可重用的解决方案,可以集成到世界各地的各种项目中,从而节省其他程序员的时间和精力。

在本文中,您将逐步学习如何在 NPM 上配置、发布和维护自己的包,使您的贡献易于访问并提高您作为开发人员的知名度。

先决条件

开始之前,请确保您拥有:

  • 已安装 NPM。您可以从nodejs.org下载它或使用NVM(Node版本管理器)。
  • 在 npmjs.com 上创建的帐户

在终端中运行以下命令,验证 Node.js 和 NPM 是否安装成功。

node -v
npm -v

如果安装正确,终端会显示各个版本。
结果将类似于以下内容:

$ v20.18.0 # node -v
$ 10.8.2 # npm -v

配置项目

首先使用您想要的包名称创建一个文件夹。就我而言,我选择了“string-reverser-jm”。

mkdir string-reverser-jm # cria a pasta via terminal
cd string-reverser-jm # acessa a pasta via terminal

初始化 NPM:

npm init

执行上述命令时,终端会问你几个问题来创建 package.json 文件。
以下是我们需要填写的每个项目的解释。

  • 名称:包的唯一标识符。
  • 版本:使用语义版本控制来指示更改。
  • 描述:对该包功能的简要说明。
  • main:入口点文件,例如index.js。
  • 关键字:用于分类的关键字,以便其他开发者更容易找到包。
  • 作者:添加相关作者详细信息。
  • 许可证:许可证定义了其他人如何使用、修改和分发代码。最常见的许可证是 MIT,它是宽松的,允许很大的使用自由,只要提供原始版权声明即可。

如果您完成了问题并且 NPM 创建了没有任何此信息的文件,请在编辑器中打开创建的文件并添加缺少的内容。

示例:

{
  "name": "string-reverser-jm",
  "version": "1.0.0",
  "description": "A simple utility to reverse strings, useful for demonstrations and small projects.",
  "main": "index.js",
  "scripts": {
    "test": "echo \"No test specified\" && exit 1"
  },
  "author": "Juliana Macedo <contact@starcoders.info> (https://www.starcoders.info)",
  "keywords": [
    "string",
    "reverse",
    "utility"
  ],
  "license": "MIT"
}

编写代码

在项目根目录中创建index.js文件。

function reverseString(str) {
  if (typeof str !== "string") {
    throw new TypeError("Expected a string as input");
  }
  return str.split("").reverse().join("");
}

module.exports = reverseString;

测试包

为了在发布之前测试包,我们将使用 npm link 命令

在包目录下,运行命令:

npm link

在要测试包的项目中,运行命令:

node -v
npm -v

在测试项目中导入并使用该包以确保其正常工作:

$ v20.18.0 # node -v
$ 10.8.2 # npm -v

要删除创建的链接,只需在测试项目目录中运行命令 npm unlink string-reverser-jm ,然后在包目录中运行 npm unlink 即可。

准备发布包

首先,为包创建一个 Git 存储库并将其链接到 NPM。这通过提供源代码来提高透明度和信任,促进协作和社区贡献,并通过 CI/CD 实现自动化,以实现更高效的管理和维护。

要链接到 NPM,请复制存储库的 https 地址并将其添加到 package.json:

mkdir string-reverser-jm # cria a pasta via terminal
cd string-reverser-jm # acessa a pasta via terminal
  • .gitignore:创建 .gitignore 文件以从版本控制中排除文件夹和文件,例如 node_modules 和 .env。
  • .npmignore:创建 .npmignore 文件以指定哪些文件和文件夹不应包含在 NPM 包中。
  • README.md:创建包含有关包的信息的文件。

发布包

使用您的登录详细信息登录 NPM:

npm init

运行以下命令来发布包:

{
  "name": "string-reverser-jm",
  "version": "1.0.0",
  "description": "A simple utility to reverse strings, useful for demonstrations and small projects.",
  "main": "index.js",
  "scripts": {
    "test": "echo \"No test specified\" && exit 1"
  },
  "author": "Juliana Macedo <contact@starcoders.info> (https://www.starcoders.info)",
  "keywords": [
    "string",
    "reverse",
    "utility"
  ],
  "license": "MIT"
}

好的,该软件包很快就会在 NPM 注册表中可用!
https://www.npmjs.com/package/string-reverser-jm

更新包

进行更新或错误修复时,请使用以下命令之一根据语义版本控制增加 package.json 中的版本号:

function reverseString(str) {
  if (typeof str !== "string") {
    throw new TypeError("Expected a string as input");
  }
  return str.split("").reverse().join("");
}

module.exports = reverseString;

然后发布更新版本:

npm link

常见问题:

  • 包名称已被占用:如果由于已存在同名包而导致发布失败,请选择另一个尚未被占用的名称。
  • 身份验证错误:确保您已登录并拥有发布所需的所有权限。
  • 版本冲突:如果您尝试在不更新版本号的情况下发布,NPM 将拒绝您的帖子。使用npm version来增加版本。

Como publicar um pacote no npm: um guia passo a passo

Como publicar um pacote no npm: um guia passo a passo

以上是如何将包发布到 npm:分步指南的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn