5.26.3

Splitter
分隔面板

自由切分指定区域
使用import { Splitter } from "antd";
版本自 5.21.0 起支持

何时使用

  • 可以水平或垂直地分隔区域。
  • 当需要自由拖拽调整各区域大小。
  • 当需要指定区域的最大最小宽高时。

代码演示

First
Second

初始化面板大小,面板大小限制。

CodeSandbox Icon
Hitu Icon
codepen icon
External Link Icon
Expand Icon
First
Second

受控调整尺寸。当 Panel 之间任意一方禁用 resizable,则其拖拽将被禁用。

CodeSandbox Icon
Hitu Icon
codepen icon
External Link Icon
Expand Icon
First
Second

使用垂直布局。

CodeSandbox Icon
Hitu Icon
codepen icon
External Link Icon
Expand Icon
First
Second
First
Second

配置 collapsible 提供快捷收缩能力。可以通过 min 限制收缩后不能通过拖拽展开。

CodeSandbox Icon
Hitu Icon
codepen icon
External Link Icon
Expand Icon
Panel 1
Panel 2
Panel 3

多面板

CodeSandbox Icon
Hitu Icon
codepen icon
External Link Icon
Expand Icon
Left
Top
Bottom

复杂组合面板,快捷折叠,禁止改变大小

CodeSandbox Icon
Hitu Icon
codepen icon
External Link Icon
Expand Icon
First
Second
First
Second

延迟渲染模式,拖拽时不会立即更新大小,而是等到松手时才更新。

CodeSandbox Icon
Hitu Icon
codepen icon
External Link Icon
Expand Icon
5.23.0

API

通用属性参考:通用属性

Splitter 组件需要通过子元素计算面板大小,因而其子元素仅支持 Splitter.Panel

Splitter

参数说明类型默认值版本
layout布局方向horizontal | verticalhorizontal-
onResizeStart开始拖拽之前回调(sizes: number[]) => void--
onResize面板大小变化回调(sizes: number[]) => void--
onResizeEnd拖拽结束回调(sizes: number[]) => void--
lazy延迟渲染模式booleanfalse5.23.0

Panel

参数说明类型默认值版本
defaultSize初始面板大小,支持数字 px 或者文字 '百分比%' 类型number | string--
min最小阈值,支持数字 px 或者文字 '百分比%' 类型number | string--
max最大阈值,支持数字 px 或者文字 '百分比%' 类型number | string--
size受控面板大小,支持数字 px 或者文字 '百分比%' 类型number | string--
collapsible快速折叠boolean | { start?: boolean; end?: boolean }false-
resizable是否开启拖拽伸缩booleantrue-

主题变量(Design Token)

组件 Token如何定制?
Token 名称描述类型默认值
splitBarDraggableSize拖拽标识元素大小number20
splitBarSize拖拽元素大小number2
splitTriggerSize拖拽触发区域大小number6
全局 Token如何定制?
文档贡献者
  • Space间距Anchor锚点