Workspace API 指南
工作区(Workspace)管理着 Obsidian 的所有面板与标签页。插件通过 Workspace API 打开视图、聚焦叶子(Leaf)与重组布局。
核心要点
拆分与聚焦
ts
// 在右侧边栏打开一个视图
const leaf = app.workspace.getRightLeaf(false);
await leaf.setViewState({ type: "my-view", active: true });
// 聚焦主区域新叶子
const leaf = app.workspace.getLeaf("tab");
// 遍历所有叶子
app.workspace.iterateAllLeaves((leaf) => { /* ... */ });常用能力
getLeaf("split")垂直/水平拆分,getLeaf("tab")新标签页getRightLeaf/getLeftLeaf操作侧边栏activeLeaf获取当前焦点叶子,便于在用户当前上下文操作on("active-leaf-change")监听焦点切换,更新 UI 状态
注意事项
- 复用已有 Leaf 而非每次新建,避免标签页爆炸
- 卸载插件时清理自建视图(
detachLeavesOfType)