跳到主要內容

檢視目錄內容

`jsr.json` 檔案

JSR 套件需要包含一個設定檔,指定套件名稱、版本和匯出項。此檔案應命名為 jsr.jsonjsr.jsonc。在使用 Deno 時,jsr.json 設定檔的所有屬性都可以改放進 deno.json

// jsr.json / deno.json
{
  "name": "@luca/greet",
  "version": "1.0.0",
  "exports": "./mod.ts"
}

name

name 欄位是套件名稱,與 JSR 範圍開頭相接。 深入了解範圍與套件名稱

版本

版本欄位是套件的版本,必須為有效的 SemVer 版本。每次發布新版本時,都必須增加套件版本。 了解有關套件版本的更多資訊

外銷

外銷欄位告訴 JSR 套件的哪些模組可以由使用者匯入。外銷欄位可以指定為單一字串,或是一個將進入點名稱對應到套件中路徑的物件。

// jsr.json / deno.json
{
  "name": "@luca/greet",
  "version": "1.0.0",
  "exports": {
    ".": "./mod.ts",
    "./greet": "./greet.ts"
  }
}

在上述範例中,外銷欄位是一個物件。.進入點是套件的預設進入點。./greet進入點是一個已命名的進入點。使用這個進入點,你可以使用 import { greet } from "@luca/greet/greet"; 匯入 greet.ts 模組,並使用 import { greet } from "@luca/greet"; 匯入 mod.ts 模組。

你也可以將外銷欄位指定為單一字串。如果你在套件中只有一個進入點,這很有用。這在語意上等於在物件形式中指定預設進入點。

// deno.json
{
  "name": "@luca/greet",
  "version": "1.0.0",
- "exports": {
-   ".": "./mod.ts"
- }
+ "exports": "./mod.ts"
}

includeexclude

您也可以使用 includeexclude 選項來在發佈期間包含和排除檔案。當使用 deno.json 時,您可以使用 `publish.include` 和 publish.exclude 來僅針對發布包含和排除檔案,而不針對所有 Deno 子指令。 深入瞭解如何篩選檔案

JSON 架構

JSON 架構檔案可供編輯器使用以提供自動完成。檔案已設定版本並可於下列位置取得: https://jsr.dev.org.tw/schema/config-file.v1.json

在 GitHub 上編輯此頁面