原生 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 支持,请联系我们 - 我们很乐意帮助您入门!