内容控件
内容控件(SDT)支持富文本、纯文本、复选框、日期、列表、图片、分组、重复节和文档部件。先配置 Docs 核心和 Pro 许可证插件,再在创建文档前注册以下两个包。将 UI 语言包合并到 locales 并加载样式。Docs 高级预设未包含这些包。
Shell
pnpm add @univerjs-pro/docs-sdt @univerjs-pro/docs-sdt-uiShell
npm install @univerjs-pro/docs-sdt @univerjs-pro/docs-sdt-uiShell
yarn add @univerjs-pro/docs-sdt @univerjs-pro/docs-sdt-uiShell
bun add @univerjs-pro/docs-sdt @univerjs-pro/docs-sdt-uiTypeScript
import { UniverDocsSdtPlugin } from '@univerjs-pro/docs-sdt'import { UniverDocsSdtUIPlugin } from '@univerjs-pro/docs-sdt-ui'import FeatureLocale from '@univerjs-pro/docs-sdt-ui/locale/zh-CN'import { LocaleType } from '@univerjs/core'import '@univerjs-pro/docs-sdt-ui/lib/index.css'univerAPI.loadLocales(LocaleType.ZH_CN, FeatureLocale)univer.registerPlugin(UniverDocsSdtPlugin)univer.registerPlugin(UniverDocsSdtUIPlugin)在选区插入
命令使用当前文档的文本选区;控件支持时会包裹已有选中文本。重复节项目通过父重复节创建,不单独插入。
TypeScript
import { InsertSdtCommand } from '@univerjs-pro/docs-sdt-ui'await univerAPI.executeCommand(InsertSdtCommand.id, { kind: 'checkbox' })锁定与持久化
控件以 CustomRangeType.SDT 范围保存在 IDocumentBody.customRanges 中,元数据位于 ISdtCustomRange.properties。内容锁阻止修改值,控件锁阻止删除外层控件;重复节还可禁止插入或删除项目。通过命令修改值、属性及重复项,以保持撤销/重做一致。
完整接口见模型命令和 UI API。DOCX 转换由 Exchange 提供;编辑器支持不代表所有 Word 属性和自定义 XML 绑定均可无损转换。
你觉得这篇文档如何?