骷髅

加载数据时,如果您需要为最终用户提供丰富的视觉和交互体验,您可以选择skeleton

基本用法

基本骨架。


可配置的行

你可以自己配置行号,为了更精确的渲染效果,实际渲染的行号总是比给定的行号多1行,这是因为我们渲染的标题行宽度是其他行的33%。

动画

我们提供了一个开关标志,指示是否显示加载动画,称为animated,当为true时,el-skeleton的所有子节点都会显示动画

定制模板

Element Plus 仅提供最常见的模板,有时这可能会出现问题,因此您有一个名为 template 的插槽来完成这项工作。

我们还提供了不同类型的骨架单元供您选择,有关更多详细信息,请向下滚动到本页底部查看 API 说明。另外,在构建您自己的自定义骨架结构时,您应该将它们构造得尽可能接近真实的 DOM,从而避免由于高度差而导致 DOM 弹跳。

加载状态

Loading结束时,我们总是需要向最终用户展示带有数据的真实UI。通过属性 loading 我们可以控制是否显示 DOM。您还可以使用槽 default 来构造真实的 DOM 元素。

渲染数据列表

大多数时候,骨架用作渲染尚未从服务器获取的数据列表的指示器,然后我们需要无缘无故地创建一个骨架列表,使其看起来像是正在加载,使用 count 属性,您可以控制需要渲染到浏览器的数量。

TIP

我们不建议向浏览器渲染大量假UI,它仍然会导致性能问题,而且破坏骨架的成本也会更长。保持 count 尽可能小,以获得更好的用户体验。

避免渲染弹跳。

有时API响应非常快,当这种情况发生时,骨架刚刚渲染到DOM,然后它需要切换回真实的DOM,这会导致突然的华丽。为了避免这种情况,您可以使用 throttle 属性。

TIP

2.8.8 开始,throttle 属性支持两个值:numberobject。当传递一个number时,相当于{leading: xxx},控制骨架屏显示的节流。当然也可以通过{trailing: xxx}来控制骨架屏消失的节流

Delicious hamburger
Thu Apr 02 2026

初始渲染加载2.8.8

当loading初始值为true时,可以设置throttle: {initVal: true, leading: xxx}来控制初始骨架屏立即显示,不限流。

切换显示/隐藏而不撕裂弹跳 2.8.8

TIP

您可以设置throttle: {initVal: true, leading: xxx, trailing: xxx}来控制骨架效果的初始显示,让切换加载状态时骨架的过渡更加平滑。

有时您希望在加载切换显示或隐藏时更流畅地渲染业务组件。您可以使用设置 throttle: {leading: xxx, trailing:xxx} 来控制渲染弹跳。

骨架 API

骨骼属性

名称描述类型默认
动画是否显示动画布尔值
计数有多少假项目渲染到 DOM数字1
加载是否显示真实的DOM布尔值
行号,仅在未给出模板槽时有用数字3
油门渲染延迟(以毫秒为单位)。数字代表延迟显示,也可以设置延迟隐藏,例如{ leading: 500, trailing: 500 }。当需要控制加载初始值时,可以设置{ initVal: true }数字 / 对象0

骷髅槽位

名称描述类型
默认真实渲染 DOM对象
模板内容作为渲染骨架模板对象

骨架项 API

SkeletonItem 属性

名称描述类型默认
变体当前渲染骨架类型枚举文字