跳到主要内容

LayoutActions

面板可以通过 context.layout 执行与用户当前布局相关的操作。

方法

addPanel()

addPanel(params): void

使用 context.layout.addPanel 在当前面板旁边添加一个新面板。

position 的值必须设置为 "sibling"

type 的值可以引用自定义扩展中的面板,格式为 extensionname.panelname,其中 extensionnamepackage.json 中的扩展名称,panelname 是扩展注册面板时提供的名称。

getState 设置为一个函数,该函数返回新面板的状态(也称为面板设置),或返回 undefined 以使用新面板的默认设置。

// 添加新面板
context.layout.addPanel({
position: "sibling",
type: "MyExtension.MyPanel",
getState: () => ({}),
});

参数

参数类型描述
params{ position: "sibling"; type: string; updateIfExists: boolean; getState: unknown; }-
params.position"sibling"面板的位置。目前仅支持 "sibling",表示新面板将与调用面板相邻。
params.typestring要打开的面板类型。对于扩展面板,格式为 "extensionName.panelName",其中 extensionName 是扩展 package.json 中的 name 字段,panelName 是提供给 registerPanel() 的名称。
params.updateIfExists?boolean是否更新已存在的同类型相邻面板。如果为 false 或省略,将始终添加新面板。(已弃用 目前此参数仅支持内置面板。)
params.getState--

返回值

void