基本概念

了解 Univer Sheets 的外掛、快照、命令與 Facade API。需要建立編輯器時,請繼續閱讀安裝與基本使用。

基本概念

在進一步深入了解 Univer 前,請先閱讀本節以掌握其基本概念,有助你更順利地使用 Univer。

基本概念包含:

  • 外掛(Plugin)
  • 快照(Snapshot)
  • 命令(Command)
  • Facade API

外掛

Univer 的功能皆由外掛提供;外掛是 Univer 的基本組成單元,多個外掛組合即構成一個 Univer 應用。

外掛的職責包含:

  1. 實作具體功能,例如 @univerjs/sheets-filter 提供篩選功能
  2. 提供底層能力,例如 @univerjs/engine-render 提供渲染能力

你可依需求挑選並組合 Univer 所提供的外掛,客製出符合情境的應用,避免載入不必要的程式碼。你亦可撰寫自訂外掛以擴充功能,滿足個別化需求。

相關連結

  1. 撰寫一個 CSV 匯入外掛 了解如何編寫外掛
  2. Univer 架構 深入理解架構設計

快照

在 Univer 中需載入「快照」才能載入文件。每種文件類型都有其專屬的快照格式,請參考下列 API 文件以撰寫符合格式的快照:

  1. 試算表的快照格式為 IWorkbookData
  2. 文件的快照格式為 IDocumentData

功能外掛可透過 resources 欄位儲存資源(如圖片等),可參考外掛自訂模型。

注意事項

注意!Univer 的快照僅用於儲存資料;在執行階段它不會自動反映最新的文件狀態。若你想將當前文件狀態保存為快照,請使用 Facade API 所提供的保存快照方法。

命令

在 Univer 中,所有對資料的修改皆須透過「命令」執行。命令導向的模式可更好追蹤變更,並支援復原、重做、協同編輯與處理多功能間的複雜關聯邏輯。

若你想以命令方式修改文件資料,請參考如何查找命令 ID。若你改用 Facade API 修改,底層其實是由 Facade API 代你組裝參數並執行對應命令。

注意事項

請勿直接修改 snapshot! 這樣不會生效,亦不會觸發視圖或 UI 更新;請透過命令或 Facade API 進行資料修改。

Facade API

由於辦公類應用的複雜度極高,Univer 的架構也相對複雜。為降低使用門檻,我們提供 Facade API——這是對 Univer 官方外掛的封裝,提供更簡潔的介面,協助開發者快速上手。

目前 Facade API 仍在持續完善中,若你有任何建議或需求,歡迎於 GitHub 提出 issue。

當然,簡化的同時亦代表取捨;若你需要更進階的自訂能力,則需在理解 Univer 架構後,直接使用較底層的命令與模組所曝露的 API。

相關連結

  1. Facade API 介紹
  2. Facade API 常用方法
  3. Facade Sheet API 常用方法

預設模式與外掛模式

Univer 採用外掛化的設計理念,旨在為開發者提供一個彈性、可擴充的電子文件應用框架。透過外掛式設計,Univer 能輕鬆整合各類功能模組,以滿足不同使用者的需求。但此種設計也提高了應用的複雜度,尤其對初次接觸 Univer 的開發者來說可能較陌生。

為此,Univer 提供 外掛模式 與 預設模式 兩種方式協助你快速整合與使用。所謂「預設」其實就是一組預先配置好的外掛組合;在無需進行進階擴充的情況下,兩種模式能提供的能力是等同的。

注意事項

  • 相依套件版本需一致:無論使用預設模式或外掛模式,請務必確保所有相依套件的版本號保持一致。
  • 謹慎混用外掛與預設:若某個外掛已被某個預設包含,使用該預設時就不需再額外單獨引入,否則可能導致衝突或功能異常。

預設模式與外掛模式的差異:

外掛模式預設模式
需要手動引入對應的 Facade 套件無需手動引入任何 Facade 套件
需注意同類型功能外掛的註冊順序預設內已處理註冊順序,無需關注
支援按需(懶)載入設定的預設會在初始化時同步載入

你覺得這篇文檔如何?

© 2026 DreamNum Co., Ltd.