跳到主要内容

Interface: RenderSlots

Defined in: LayoutViewDom.tsx:21

渲染插槽:定制"可见内容",交互宿主(头部拖拽停靠/角标命中/分界线拖拽)仍由 lib 保留。 返回的 JSX 渲染进对应宿主内;不传则用默认外观(零回归)。

Properties

renderArea?

optional renderArea?: (ctx) => ReactNode

Defined in: LayoutViewDom.tsx:33

区域盒视觉层:铺满该区域、位于内容之下。提供后库会去掉默认背景/描边,完全由你接管。 rect 为归一化比例矩形(渲染层换算像素),hot 表示该区域正被角标 hover(关联)。

Parameters

ctx
areaId

number

contentType

string

hot

boolean

rect

Rect

title

string

Returns

ReactNode


renderCorner?

optional renderCorner?: (ctx) => ReactNode

Defined in: LayoutViewDom.tsx:26

角标(十字手柄):ctx 含区域 id、归一化坐标 x/y、角标 hover 关联的共享区域 id 集合、hover 状态

Parameters

ctx
areaId

number

hovered

boolean

sharedIds

number[]

x

number

y

number

Returns

ReactNode


renderEdge?

optional renderEdge?: (ctx) => ReactNode

Defined in: LayoutViewDom.tsx:30

分界线胶囊:hovered 表示该线(或其同向连通族)正被 hover。 推荐 hover 时才返回可见手柄(如 {hovered ? <胶囊/> : null}),平时保持空白—— 一条被 T 型/十字点切分的长线不会同时冒出多个胶囊;整条连通线由 .tl-asplit-hot 高亮。

Parameters

ctx
edgeId

number

hovered

boolean

vertical

boolean

Returns

ReactNode


renderHeader?

optional renderHeader?: (ctx) => ReactNode

Defined in: LayoutViewDom.tsx:24

区域头部条:返回的 JSX 渲染进头部(默认为可拖拽标题条)。 ctx: areaId 区域 id / contentType 内容类型 / title 解析后的标题

Parameters

ctx
areaId

number

contentType

string

title

string

Returns

ReactNode


renderPreview?

optional renderPreview?: (ctx) => ReactNode

Defined in: LayoutViewDom.tsx:42

预览层:分割/合并/停靠的视觉提示(覆盖层、不挡交互)。提供后取代库默认 tl-preview-* 样式。 rects/坐标均为归一化比例;渲染时换算百分比(如 left: ${r.xmin*100}%)。

Parameters

ctx
dockTarget?

DockTarget

mode

"join" | "split" | "dock"

slotRect?

Rect

splitDir?

Axis

splitLine?

number

srcRect

Rect

tgtRect?

Rect

Returns

ReactNode