vue element plus Space 间距

简介: vue element plus Space 间距

虽然我们拥有 Divider 组件,但很多时候我们需要不是一个被 Divider 组件 分割开的页面结构,因此我们会重复的使用很多的 Divider 组件,这在我们的开发效率上造成了一定的困扰。 间距组件就是为了解决这种困扰应运而生的。

基础用法#

最基础的用法,通过这个组件来给组件之间提供统一的间距。

通过间距组件来给多个组件之间提供间距

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

垂直布局#

使用 direction 来控制布局的方式, 背后实际上是利用了 flex-direction 来控制.

我们也提供垂直布局方式。

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

控制间距的大小#

通过调整 size 的值来控制间距的大小

使用内置的 smalldefaultlarge 来设置间距大小,分别对应 8px12px16px 的间距。 默认的间距大小为 small,也就是 8px

您也可以通过自定义的 size 来控制大小, 参见下一个部分。

largedefaultsmall

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

自定义 Size#

很多时候,内建的大小不满足设计师的要求,我们可以通过传入自己定义的大小 (数值类型) 来设置。

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

TIP

不要让 ElSpace 与使用依赖父元素百分比宽度(或高度)的元素一起使用(例如 ElSlider),这样会造成光标不同步。

自动换行#

水平 (horizontal) ** 模式下, 通过控制 wrap(布尔类型)**来控制是否自动换行

利用 wrap 属性控制换行

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

Text button

行间分隔符#

有时候,仅仅在行间加空白并不能满足我们的日常需求,此时分隔符 (spacer) 就可以发挥非常好的作用了。

字母数字类型分隔符#

button 1

|

button 2

分隔符还可以是 VNode 类型#

button 1

button 2

对齐方式#

设置该值可以调整所有子节点在容器内的对齐方式,可设置的值与 align-items一致。

使用 alignment 属性来对齐

string

button

header

body

string

button

header

body

string

button

header

body

填充容器#

通过 fill**(布尔类型)**参数,您可以控制子节点是否自动填充容器。

下面的例子中,当设置为 fill 时,子节点的宽度会自动适配容器的宽度。

用 fill 属性让子节点自动填充容器

fill:

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

也可以使用 fillRatio 参数,自定义填充的比例, 默认值为 100,代表基于父容器宽度的 100% 进行填充

需要注意的是,水平布局和垂直布局的表现形式稍有不同,具体的效果可以查看下面的例子

用 fillRatio 自定义填充比例

direction: horizontalvertical

fillRatio:

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

Card nameOperation button

List item 1

List item 2

List item 3

List item 4

API#

Attributes#

属性名 说明 类型 默认值
alignment 对齐的方式 enum align-items center
class 类名 string / object / array
direction 排列的方向 enum horizontal
prefix-cls 给 space-items 的类名前缀 string
style 额外样式 string / object
spacer 间隔符 string / number / VNode
size 间隔大小 enum / number / array small
wrap 设置是否自动折行 boolean false
fill 子元素是否填充父容器 boolean false
fill-ratio 填充父容器的比例 number 100

Slots#

名称 说明
default 需要添加间隔的元素

源代码#

组件文档

相关文章
|
5月前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
476 2
|
4月前
|
缓存 JavaScript
vue中的keep-alive问题(2)
vue中的keep-alive问题(2)
404 137
|
8月前
|
人工智能 JavaScript 算法
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
935 0
|
7月前
|
人工智能 JSON JavaScript
VTJ.PRO 首发 MasterGo 设计智能识别引擎,秒级生成 Vue 代码
VTJ.PRO发布「AI MasterGo设计稿识别引擎」,成为全球首个支持解析MasterGo原生JSON文件并自动生成Vue组件的AI工具。通过双引擎架构,实现设计到代码全流程自动化,效率提升300%,助力企业降本增效,引领“设计即生产”新时代。
554 1
|
7月前
|
JavaScript 安全
在 Vue 中,如何在回调函数中正确使用 this?
在 Vue 中,如何在回调函数中正确使用 this?
368 0
|
10月前
|
JavaScript
vue实现任务周期cron表达式选择组件
vue实现任务周期cron表达式选择组件
1204 4
|
8月前
|
JavaScript UED
用组件懒加载优化Vue应用性能
用组件懒加载优化Vue应用性能
|
9月前
|
JavaScript 数据可视化 前端开发
基于 Vue 与 D3 的可拖拽拓扑图技术方案及应用案例解析
本文介绍了基于Vue和D3实现可拖拽拓扑图的技术方案与应用实例。通过Vue构建用户界面和交互逻辑,结合D3强大的数据可视化能力,实现了力导向布局、节点拖拽、交互事件等功能。文章详细讲解了数据模型设计、拖拽功能实现、组件封装及高级扩展(如节点类型定制、连接样式优化等),并提供了性能优化方案以应对大数据量场景。最终,展示了基础网络拓扑、实时更新拓扑等应用实例,为开发者提供了一套完整的实现思路和实践经验。
1180 78
|
10月前
|
缓存 JavaScript 前端开发
Vue 基础语法介绍
Vue 基础语法介绍
|
8月前
|
JavaScript 前端开发 开发者
Vue 自定义进度条组件封装及使用方法详解
这是一篇关于自定义进度条组件的使用指南和开发文档。文章详细介绍了如何在Vue项目中引入、注册并使用该组件,包括基础与高级示例。组件支持分段配置(如颜色、文本)、动画效果及超出进度提示等功能。同时提供了完整的代码实现,支持全局注册,并提出了优化建议,如主题支持、响应式设计等,帮助开发者更灵活地集成和定制进度条组件。资源链接已提供,适合前端开发者参考学习。
571 17