Space 间距
虽然我们有 Divider,但有时我们需要多个 Divider 来分隔元素,所以我们将每个元素堆叠在 Divider 上,但这样做不仅使我们的代码变得丑陋,而且难以维护。Space 这种组件能够同时为我们提供生产力和优雅。
基础用法
最基础的用法是使用此组件在每个组件之间提供统一的间距。
使用 Space 间距组件提供间距
垂直布局
使用 direction 属性来控制布局,我们使用 flex-direction 来实现。
我们也提供了垂直布局。
控制间距的大小
通过 size 属性控制间距大小。
你可以设置内置的大小:small、default、large,这些大小分别对应 8px、12px、16px。 默认大小为 small,即 8px
你也可以使用自定义大小来覆盖它。 请参阅下一部分。
自定义大小
有时内置的大小无法满足业务需求,我们可以使用自定义大小(数字类型)来控制项目之间的间距。
提示
不要将 ElSpace 与依赖父级宽度(高度)的组件一起使用,例如 ElSlider,在这种情况下,当你拖动滑块时,进度条会增长,从而导致光标和滑块之间的错位。
自动换行
在水平(horizontal)模式下,使用 wrap(布尔类型)来控制自动换行行为。
使用 wrap 控制换行
分隔符
有时我们想要的不只是空白间距,因此我们提供了 (spacer) 来帮助我们。
字面量类型的分隔符
分隔符也可以是 VNode
对齐方式
设置此属性可以调整子节点的对齐方式,可选值可以在 align-items 中找到。
使用对齐 (alignment)
填充容器
通过 fill (布尔类型)参数,你可以控制子节点是否自动填充容器。
在以下示例中,当设置为 fill 时,子节点的宽度将自动适应容器的宽度。
使用 fill 让子节点自动填充容器
你还可以使用 fillRatio 参数来自定义填充比例。 默认值为 100,表示以父容器宽度的 100% 进行填充。
需要注意的是,水平布局和垂直布局的表现略有不同,具体效果可以在以下示例中查看。
使用 fillRatio 自定义填充比例
API
属性
| 名称 | 描述 | 类型 | 默认值 |
|---|---|---|---|
| 对齐方式 | 设置项目的对齐方式 | enum align-items | 居中 |
| class | className | string / object / array | — |
| direction | 排列方向 | 枚举 | horizontal |
| prefix-cls | Space 项的前缀 | string | — |
| style | 额外样式规则 | string / object | — |
| spacer | 分隔符 | string / number / VNode | — |
| size | 间隔大小 | enum / number / array | 小 |
| wrap | 自动换行 | boolean | false |
| 填充色 | 是否填充容器 | boolean | false |
| fill-ratio | 填充比例 | number | 100 |
插槽
| 名称 | description |
|---|---|
| default | 要排列的项目 |