Skip to content

v-skeleton 骨架屏指令

简介

为任意元素添加骨架屏效果,常用于数据加载时的占位展示。基于 Element Plus 的 ElSkeleton 实现,支持自定义动画、图片/文本骨架、宽高、样式等。

基本用法

vue
<template>
  <div v-skeleton="{ loading: isLoading }">内容</div>
</template>

<script setup>
import { ref } from 'vue'
const isLoading = ref(true)
</script>

参数说明

v-skeleton 支持对象参数,常用属性如下:

参数说明类型默认值
loading是否显示骨架屏booleantrue
animated是否显示动画booleantrue
throttle延迟显示骨架屏(ms)number0
isImage是否为图片骨架booleanfalse
width骨架宽度(px)number100%
height骨架高度(px)number100%
style额外样式object-

注意事项

  • 该指令会自动为目标元素设置 position: relative(如原本为 static)。
  • 骨架屏会自动撑满目标元素区域。
  • 支持自定义圆角、padding(自动继承)。

修饰符

无。