容器與泳道
容器讓 Boards 能呈現框選區域、泳道、UML 套件區塊,以及其他父子結構。容器的隸屬關係會透過 parentId 儲存在子元素上;若為泳道,則另透過 laneId 儲存。
建立容器
TypeScript
const board = univerAPI.getActiveBoard()if (!board) throw new Error('No active Board')const containerId = 'scope'const containerCreated = board.createContainer({ id: containerId, title: 'Scope', left: 80, top: 80, width: 640, height: 360,})if (!containerCreated) { throw new Error('Cannot create container')}將元素移入容器
TypeScript
board.moveElementsToContainer(['card-1', 'card-2'], containerId)board.fitContainerToContent(containerId)設定隸屬行為
TypeScript
board.setContainerMembershipLocked(containerId, true)board.setContainerAutoResize(containerId, false)泳道
泳道是具有分道設定的容器。請使用專用的 Facade API 來新增、移除、調整大小、重新排序、收合及重新命名分道。
TypeScript
const swimlaneId = 'delivery'const swimlaneCreated = board.createSwimlane({ id: swimlaneId, left: 80, top: 80, width: 720, height: 360, orientation: 'horizontal', lanes: [ { id: 'todo', title: 'Todo', size: 240 }, { id: 'done', title: 'Done', size: 240 }, ],})if (!swimlaneCreated) { throw new Error('Cannot create swimlane')}board.renameSwimlaneLane(swimlaneId, 'todo', 'Backlog')你覺得這篇文檔如何?