搜索文档
自由布局线条管理, 目前挂在自由布局 document 下边
> API Detail
import { useClientContext } from '@flowgram.ai/free-layout-editor' const ctx = useClientContext(); console.log(ctx.document.linesManager)
获取所有线条的实体
const allLines = ctx.document.linesManager.getAllLines()
创建线条
// from和 to 为对应要连线的节点id, fromPort, toPort 为 端口 id, 如果节点为单个端口可以不指定 const line = ctx.document.linesManager.createLine({ from, to, fromPort, toPort })
导出线条数据
const json = ctx.document.linesManager.toJSON()
监听所有线条的连线变化
import { useEffect } from 'react' import { useClientContext, useRefresh } from '@flowgram.ai/free-layout-editor' function SomeReact() { const refresh = useRefresh() const linesManager = useClientContext().document.linesManager useEffect(() => { const dispose = linesManager.onAvailableLinesChange(() => refresh()) return () => dispose.dispose() }, []) console.log(ctx.document.linesManager.getAllLines()) }
WorkflowLinesManager 支持通过渲染器注册表自定义箭头样式。详细使用方法请参考 线条配置指南 文档。
// 简单示例:注册自定义箭头 const editorProps = { materials: { components: { 'arrow-renderer': MyCustomArrow, }, }, };