如何在微信小程序中使用骨架屏的步骤


Posted in Javascript onJune 12, 2020

本文介绍了微信小程序中使用骨架屏,分享给大家,具体如下:

先上效果图

如何在微信小程序中使用骨架屏的步骤

骨架屏主要起到占位作用,向用户说明该区域有内容,有一定的心理准备。

聊聊背景:刚上线一款小程序,随着上架的东西越来越多,微信小程序加载越来越慢,会出现一段时间的白屏(大概2-3s),这对用户体验上来讲特别不友好。所以在网上开始找这方面的资料,骨架屏主要分为两种方案,下面来说说这两种方案。

1、为每个需要使用骨架屏的页面定制一套静态页面。这种方法缺点很明显,需要为每个页面单独定制,布局如果修改则需要同时修改两个页面,增加了维护成本。但这种特别适用于长列表,只需要做用户可见的部分,可在一定程度上增加响应速度。

2、利用工具渲染页面 获取指定的DOM节点和对应样式,生成灰色块覆盖在原来的样式结构上,从而实现骨架屏。这种方式简单易用好维护,个人感觉不太适合在长列表页面。https://github.com/jayZOU/skeleton 这款骨架屏组件轻量、方便、快捷,里面有教程,强烈推荐。

使用哪一种方案,就要根据自己的项目情况来进行选择了。我采用的是第一种,因为这个页面加载的DOM节点太多了。从获取到数据后到渲染到页面这段时间有骨架屏做缓冲,效果倍棒。

实现方法:

1、根据原有页面的结构,在重写一个静态页面,把原来用来显示图片、文字的地方替换成有灰色背景色的块。

<!--骨架屏 -->

<view class="sort" wx:if="{{showSkeleton}}">

<scroll-view scroll-y="true" class="sortlist" style="height:{{contentHeight-170}}rpx">

<view class="sort-l" >

<view class="sort-lgj"></view>

</view>

<view class="sort-l" >

<view class="sort-lgj"></view>

</view>

<view class="sort-l" >

<view class="sort-lgj"></view>

</view>

<view class="sort-l" >

<view class="sort-lgj"></view>

</view>

<view class="sort-l" >

<view class="sort-lgj"></view>

</view>

<view class="sort-l" >

<view class="sort-lgj"></view>

</view>

</scroll-view>

</view >

<view class="sort" wx:else>

  这里是原来的页面

</view >

2、使用一个变量来控制骨架屏的显示或隐藏。

onLoad: function(options) {

  var that = this

  wx.request({

    url:'xxxx', //请求地址

    data: { //发送给后台的数据

      xxxx: xxxx

    },

    header: { //请求头

    "Content-Type": "applciation/json"

    },

    method: "GET",

    success: function(res) {

      that.setData({

        goodslist: data

      })

      that.setData({

        // 数据渲染后

        showSkeleton: false

      })

    },

    fail: function(err) {    

    }

  })
}

总结一下:数据较多的页面使用骨架屏可以大大提高用户体验。上文提到的骨架屏组件也是非常好用,几分钟就可以上手使用。

初次接触骨架屏,有理解不到的地方还请多多指正。

到此这篇关于如何在微信小程序中使用骨架屏的步骤的文章就介绍到这了,更多相关小程序使用骨架屏内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
javascript 多浏览器 事件大全
Mar 23 Javascript
Jquery模仿Baidu、Google搜索时自动补充搜索结果提示
Dec 26 Javascript
通过Jquery的Ajax方法读取将table转换为Json
May 31 Javascript
js判断登陆用户名及密码是否为空的简单实例
May 16 Javascript
javascript学习笔记_浅谈基础语法,类型,变量
Sep 19 Javascript
js获取当前页的URL与window.location.href简单方法
Feb 13 Javascript
jQuery zTree树插件动态加载实例代码
May 11 jQuery
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
Feb 10 Javascript
vue-cli的工程模板与构建工具详解
Sep 27 Javascript
详解Node.js使用token进行认证的简单示例
May 25 Javascript
vue如何使用外部特殊字体的操作
Jul 30 Javascript
解决vue net :ERR_CONNECTION_REFUSED报错问题
Aug 13 Javascript
基于Web Audio API实现音频可视化效果
Jun 12 #Javascript
js实现mp3录音通过websocket实时传送+简易波形图效果
Jun 12 #Javascript
学前端,css与javascript重难点浅析
Jun 11 #Javascript
微信小程序 scroll-view的使用案例代码详解
Jun 11 #Javascript
基于ajax及jQuery实现局部刷新过程解析
Sep 12 #jQuery
微信小程序scroll-view实现滚动到锚点左侧导航栏点餐功能(点击种类,滚动到锚点)
Jun 11 #Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
Jun 11 #Javascript
You might like
PHP学习笔记 用户注册模块用户类以及验证码类
2011/09/20 PHP
Linux平台php命令行程序处理管道数据的方法
2016/11/10 PHP
轻松实现php文件上传功能
2017/02/17 PHP
php提高脚本性能的4个技巧
2020/08/18 PHP
ExtJS扩展 垂直tabLayout实现代码
2009/06/21 Javascript
学习javascript面向对象 理解javascript对象
2016/01/04 Javascript
AngularJS学习笔记之依赖注入详解
2016/05/16 Javascript
JavaScript实现窗口抖动效果
2016/10/19 Javascript
js实现适合新闻类图片的轮播效果
2017/02/05 Javascript
bootstrap中模态框、模态框的属性实例详解
2017/02/17 Javascript
详解React 16 中的异常处理
2017/07/28 Javascript
vue组件父子间通信详解(三)
2017/11/07 Javascript
JavaScript中Object基础内部方法图
2018/02/05 Javascript
基于Vue+elementUI实现动态表单的校验功能(根据条件动态切换校验格式)
2019/04/04 Javascript
webpack-mvc 传统多页面组件化开发详解
2019/05/07 Javascript
用Python进行TCP网络编程的教程
2015/04/29 Python
Python编码类型转换方法详解
2016/07/01 Python
用matplotlib画等高线图详解
2017/12/14 Python
使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤
2018/12/17 Python
python异步存储数据详解
2019/03/19 Python
python中比较两个列表的实例方法
2019/07/04 Python
Django和Ueditor自定义存储上传文件的文件名
2021/02/25 Python
英国皇家邮政海外旗舰店:Royal Mail
2018/02/21 全球购物
Jdbc数据访问技术面试题
2012/03/30 面试题
自我评价的正确写法
2013/09/19 职场文书
七年级数学教学反思
2014/01/22 职场文书
大学同学聚会邀请函
2014/01/29 职场文书
2014年端午节演讲稿范文
2014/05/23 职场文书
物理系毕业生自荐书
2014/06/13 职场文书
查摆剖析材料范文
2014/09/30 职场文书
会计稽核岗位职责
2015/04/13 职场文书
用电申请报告范文
2015/05/18 职场文书
创业项目大全(适合在家创业的项目)
2019/08/15 职场文书
微信小程序实现录音Record功能
2021/05/09 Javascript
解决pytorch读取自制数据集出现过的问题
2021/05/31 Python
剧场版《转生恶役只好拔除破灭旗标》公开最新视觉图 2023年上映
2022/04/02 日漫