App Extensions 是一種輕鬆注入複雜 (或簡單) 函式庫的方式,這些函式庫帶有多種依賴項、啟動檔案、範本和自訂邏輯。它們可以擴展 webpack、quasar.config
檔案,將外部 UI 元件緊密耦合到核心,甚至可以使用 Quasar CLI 註冊新命令。它們可以使用 quasar dev
執行,並完全存取當前的即時 ctx
(context)。
開發模式實際上為 Quasar 開啟了無限可能,使其成為最可擴展和強大的框架之一——現在僅受您的想像力和創新力的限制。本頁將向您介紹 App Extensions 的用法。
WARNING
App Extensions 專為 Quasar CLI 設計。這表示您將無法使用 Quasar Vite 外掛程式、Vue CLI 或 UMD 環境安裝或執行它們。
App Extension 可以做什麼?
- 使用新命令增強 CLI 行為
- 製作 Quasar UI 外掛程式
- 安裝隨附的應用程式
- 建立和分享自訂元件
- 為框架或其他應用程式建立和分享新增功能
- 建置、啟動和控制 API 伺服器
- Hook、組合和擴展 Quasar 核心元件
- 根據 Quasar 環境外部動態變化的值修改程式碼
- 建立和管理平台特定介面的抽象概念
- ……以及更多
App Extensions 取代了建立自訂啟動套件的需求。您在官方啟動套件之上新增的任何內容都可以 App Extension 的形式呈現。這也消除了維護非官方啟動套件與官方套件同步的維護負擔,因此我們可以確保每位開發人員始終能獲得最新、最棒的 Quasar 規格。
App Extension ext-id
所有 App Extensions 都必須以 quasar-app-extension-
作為名稱前綴。在此前綴之後的所有內容都被視為其簡短別名。我們在整份文件中將其稱為 ext-id
。
範例
quasar-app-extension-awesomeness
的 ext-id 是awesomeness
@some-npm-org/quasar-app-extension-awesomeness
的 ext-id 是@some-npm-org/awesomeness
這種命名方案的優點之一是,在搜尋其 npm 套件時,可以輕鬆發現 Quasar App Extensions:App Extension - 探索。
App Extensions 的結構
App Extensions 可以安裝、執行和解除安裝。以下指南將以抽象的方式討論這一點。有關個別擴展及其使用方式的詳細資訊,請參閱其各自的儲存庫。
安裝 App Extension
$ quasar ext add <ext-id>
此命令將尋找並安裝擴展的模組。安裝完成後,可能會出現一個或多個提示,要求您做出選擇或新增擴展所需的資訊。安裝完成後,您將返回命令列。
列出已安裝的 App Extensions
有幾種方法可以「探索」已安裝的 App Extensions
$ quasar ext
$ quasar info
$ cat quasar.extensions.json
「執行」App Extensions
沒有單一的方法可以執行 app extensions,因為它們中的一些可能甚至沒有任何程式碼可以執行(即僅是複製到專案中特定資料夾的範本檔案),而另一些可能僅僅是安裝輔助程式,另一些可能選擇向 Quasar CLI 新增新命令。
然而,每個 App Extension 都將在 quasar dev
和 quasar build
期間初始化。
更新 App Extension
您可能需要更新您的擴展,這可以使用與安裝時相同的命令來完成
$ quasar ext add <ext-id>
WARNING
重新安裝擴展可能會覆寫您已變更的檔案。您將看到覆寫偵測到的檔案的選項。
移除 App Extension
您可以透過執行此命令,從 Quasar CLI 中移除已掛鉤的 App Extension。但根據作者和擴充套件本身的設計,您可能需要手動清理檔案。
$ quasar ext remove <ext-id>
官方應用程式擴充套件清單
請參閱 探索 App Extensions 頁面。