跳至主要内容

查看目录

原生 JSR 导入

原生支持 JSR 的工具可以使用 `jsr:` 方案导入 JSR 包。这允许更有效地安装 JSR 包,并更好地支持 JSR 的功能。

目前,唯一原生支持 JSR 的工具是 **Deno**。如果您使用其他工具,您可以 使用 JSR 的 npm 兼容性层 来使用 JSR 包。

您想在您的工具中添加对 JSR 的原生支持吗?查看 实现原生 `jsr:` 支持的指南

安装和导入 JSR 包

在支持原生 JSR 的工具中,不需要显式安装 JSR 包。相反,您可以在导入说明符中使用 `jsr:` 模式导入它们,工具将在第一次运行时自动下载并缓存该包。

例如,要导入 @luca/cases

import { camelCase } from "jsr:@luca/cases";

这将自动下载并缓存 `@luca/cases` 包的最新版本。

您也可以在导入说明符中指定版本约束,以导入特定版本的包

// Import a specific patch version
import { camelCase } from "jsr:@luca/[email protected]";

// Import the latest version in a major version range
import { camelCase } from "jsr:@luca/cases@1";

// Import the latest version compatible with a specific version (>= 1.2.3 and < 2.0.0)
import { camelCase } from "jsr:@luca/cases@^1.2.3";

// Import the latest version in a minor version range, greater than the specific version (>= 1.2.3 and < 1.3.0)
import { camelCase } from "jsr:@luca/cases@~1.2.3";

如果您想在不编写 `jsr:` 和版本约束的情况下导入包,可以使用 导入映射 将 `jsr:` 模式映射到不同的前缀。

在 **Deno** 中,您可以通过在 `deno.json` 中的 `"imports"` 部分添加一行来实现。您可以手动执行此操作,也可以使用 `deno add` 命令

 {
   "imports": {
+    "@luca/cases": "jsr:@luca/cases@1"
   }
 }

然后,您可以使用在 `deno.json` 中定义的别名导入包

import { camelCase } from "@luca/cases";

在工具中实现原生 `jsr:` 导入

注意:本节适用于希望在其工具中添加原生 JSR 支持的工具维护者。您是 JSR 的用户吗?查看使用说明

本节仍处于 TODO 状态。如果您想在您的工具中添加原生 JSR 支持,请联系我们 - 我们很乐意帮助您入门!

在 GitHub 上编辑此页面