Skeleton 骨架屏

介绍

用于在内容加载过程中展示一组占位图形。

引入

app.jsonindex.json中引入组件,详细介绍见快速上手

  1. "usingComponents": {
  2. "van-skeleton": "@vant/weapp/skeleton/index"
  3. }

Vant Weapp 1.0 版本开始支持此组件,升级方式参见快速上手

代码演示

基础用法

通过title属性显示标题占位图,通过row属性配置占位段落行数。

  1. <van-skeleton title row="3" />

显示头像

通过avatar属性显示头像占位图。

  1. <van-skeleton title avatar row="3" />

展示子组件

loading属性设置成false表示内容加载完成,此时会隐藏占位图,并显示Skeleton的子组件。

  1. <van-skeleton title avatar row="3" loading="{{ loading }}">
  2. <view>实际内容</view>
  3. </van-skeleton>
  1. Page({
  2. data: {
  3. loading: true,
  4. },
  5. onReady() {
  6. this.setData({
  7. loading: false,
  8. });
  9. },
  10. });

API

Props

Props

参数说明类型默认值版本
row段落占位图行数number0-
row-width段落占位图宽度,可传数组来设置每一行的宽度string | string[]100%-
title是否显示标题占位图booleanfalse-
title-width标题占位图宽度string | number40%-
avatar是否显示头像占位图booleanfalse-
avatar-size头像占位图大小string | number32px-
avatar-shape头像占位图形状,可选值为squarestringround-
loading是否显示占位图,传false时会展示子组件内容booleantrue-
animate是否开启动画booleantrue-

Skeleton 骨架屏 - 图1