案例:使用

现已经在支付的项目使用

用户体验一直是前端开发需要考虑的重要部分,在数据请求时常见到锁屏的loading动画,而现在越来越多的产品倾向于使用Skeleton Screen Loading(骨架屏)替代,以优化用户体验

 

Skeleton Screen

Skeleton Screen(骨架屏)就是在页面数据尚未加载前先给用户展示出页面的大致结构,直到请求数据返回后再渲染页面,补充进需要显示的数据内容。常用于文章列表、动态列表页。

请求处理

无论是PC端还是移动端,只要有数据请求都会出现一定的延迟时间,之前对于这段等待时间的处理也是各不相同。同步请求中页面会卡住,直到请求完成,用户期间无法进行任何操作,有一种死机的感觉,体验较差。异步请求中大多数会以锁屏的loading动画过渡等待时间,于是,也就出现了制作不同loaidng状态的炫技。 

Skeleton Screen优势

锁屏loading在一定程度限制了用户的操作,所以为了进一步提升用户体验,Skeleton Screen被越来越多的公司产品采用,如:Facebook简书知乎掘金等,在动态、文章加载时预先渲染出结构布局,数据加载完成后再填充数据显示,这样的好处在于不干扰用户操作,使用户对于加载的内容有一个大致的预期,特别是弱网络环境下极大的优化了用户体验。

二、项目中的使用

项目的引入:

注册全局
组件的目录

引入说明

Options:

SkeletonLoading

Props

Props
Type
Default
Description
- - - -

Function

Name
Type
Descrition
- - -

Events

Name
Type
Description
- - -

Slot

Name
Description
default slot -

CircleSkeleton

Props

Props
Type
Default
Description
backColor String #e7e7e7 background color
diameter String 100% diameter of circle

Function

Name
Type
Descrition
- - -

Events

Name
Type
Description
- - -

Slot

Name
Description
- -

SquareSkeleton

Props

Props
Type
Default
Description
backColor String #e7e7e7 background color
boxProperties Object   box properties of square skeleton
count Number 1 count of square skeleton

boxProperties

Item
Type
Default
Description
width String 100% 宽度 默认为容器的宽度支持px、em、rem单位
height String 16px 高度 支持px、em、rem单位
top String 0 外上边距 支持px、em、rem单位
bottom String 0 外下边距 支持px、em、rem单位

Function

Name
Type
Descrition
- - -

Events

Name
Type
Description
- - -

Slot

Name
Description
- -

Column

Props

Props
Type
Default
Description
gutter Number 0 左右的外边距 相当于 pading: 0 gutter, 单位px。
span Number - 一行被等分为24份,span值为一行中占据的份数,参考这里 。
order Number - 一行中位置优先级,参考这里 。

Function

Name
Type
Descrition
- - -

Events

Name
Type
Description
- - -

Slot

Name
Description
- -

Row

Props

Props
Type
Default
Description
gutter Object - 上下的外边距 相当于 pading: gutter.top 0 gutter.bottom 0, 单位px。
align String - 值可以为 top, middle, bottom, 具体可以参考 flex
justify Number - 值可以为 start, end, center, space-around, space-between, 具体可以参考 flex 。

gutter

Props
Type
Default
Description
top String 0 上外边距 相当于 pading-top: top, 需要带上单位, 单位可以是px em rem。
bottom String 0 下外边距 相当于 pading-bottom: top, 需要带上单位, 单位可以是px em rem。

Function

Name
Type
Descrition
- - -

Events

Name
Type
Description
- - -

Slot

Name
Description
- -

例子一:

<template>
<div class="list1">
<skeleton-loading>
<row v-for="i in 6" :key="i" :gutter="{top: '10px', bottom: '10px'}">
<column :span="3" :gutter="10">
<circle-skeleton></circle-skeleton>
</column>
<column :span="20" :gutter="10">
<square-skeleton
:count="2"
:boxProperties="{
bottom: '15px',
width: '250px',
height: '15px'
}"
></square-skeleton>
</column>
</row>
</skeleton-loading>
</div>
</template>

<script>
export default {}
</script>
 

效果

git 仓库

http://git.daojia-inc.com/fe-jz/universal-pay/

分之:feature_share_skeleton

Skeleton Screen -- 骨架屏--应用的更多相关文章

  1. Skeleton Screen — 骨架屏

    用户体验一直是前端开发需要考虑的重要部分,在数据请求时常见到锁屏的loading动画,而现在越来越多的产品倾向于使用Skeleton Screen Loading(骨架屏)替代,以优化用户体验. Sk ...

  2. Vue单页面骨架屏实践

    github 地址: VV-UI/VV-UI 演示地址: vv-ui 文档地址:skeleton 关于骨架屏介绍 骨架屏的作用主要是在网络请求较慢时,提供基础占位,当数据加载完成,恢复数据展示.这样给 ...

  3. Vue页面骨架屏(二)

    实现思路 参考原文中在构建时使用 Vue 预渲染骨架屏一节介绍的思路,我将骨架屏也看成路由组件,在构建时使用 Vue 预渲染功能,将骨架屏组件的渲染结果 HTML 片段插入 HTML 页面模版的挂载点 ...

  4. 简单实现骨架屏 (Skeleton Screens)

          近年,国内外各大网站都引入骨架屏(Skeleton Screens)技术来提高用户体验.相比于之前的Loading动画,骨架屏页面更容易让用户产生一种错觉,页面快加载完了.骨架屏实现原理很 ...

  5. 使用 Skeleton Screen 提升用户感知体验

    1024程序猿节"愿世界和平,没有bug",腾讯云社区向改变世界的程序猿致敬! 作者:陈纬杰 一直以来,无论是web还是iOS.android的应用中,为了提升应用的加载等待这段时 ...

  6. 骨架屏(page-skeleton-webpack-plugin)初探

    作者:小土豆biubiubiu 博客园:https://www.cnblogs.com/HouJiao/ 掘金:https://juejin.im/user/2436173500265335 微信公众 ...

  7. 《前端之路》之 前端图片 类型 & 优化 & 预加载 & 懒加载 & 骨架屏

    目录 09: 前端图片 类型 & 优化 & 预加载 & 懒加载 & 骨架屏 09: 前端图片 类型 & 优化 & 预加载 & 懒加载 & ...

  8. Vue 项目骨架屏注入与实践

    作为与用户联系最为密切的前端开发者,用户体验是最值得关注的问题.关于页面loading状态的展示,主流的主要有loading图和进度条两种.除此之外,越来越多的APP采用了“骨架屏”的方式去展示未加载 ...

  9. 微信小程序 - 深度定义骨架屏(提示)

    此举每个页面必须创建对应的css样式,比较麻烦(但非常准确),推荐使用组件化的skeleton组件 原理很简单:知晓一下this.setData原理,就OK了,可能大家会因此了解到全屏加载loadin ...

随机推荐

  1. jforum(1)--环境搭建

    JForum 是采用Java开发的功能强大且稳定的论坛系统.它提供了抽象的接口.高效的论坛引擎以及易于使用的管理界面,同时具有完全的权限控制.多语言支持(包括中文).高性能.可自定义的用户接口.安全. ...

  2. 【洛谷P1313 计算系数】

    题目连接 #include<algorithm> #include<iostream> #include<cstring> #include<cstdio&g ...

  3. PHP基础之$_SERVER的详细参数与说明

    这几天准备静下心来看看平时忽略的一些PHP基础知识,也算是一个复习吧. 今天准备复习的是$_SERVER这个变量. 说明:$_SERVER 是一个包含了诸如头信息(header).路径(path).以 ...

  4. PowerShell Empire使用笔记

    ##安装过程 git clone https://github.com/EmpireProject/Empire.git cd Empire cd setup sudo ./install.sh ## ...

  5. SpringCloud笔记一:扫盲

    目录 前言 什么是微服务? 微服务的优缺点是什么? 微服务之间是如何通讯的? SpringCloud和Dubbo有哪些区别? SpringCloud和SpringBoot的关系? 什么是服务熔断?什么 ...

  6. PageRank算法--从原理到实现

    本文将介绍PageRank算法的相关内容,具体如下: 1.算法来源 2.算法原理 3.算法证明 4.PR值计算方法 4.1 幂迭代法 4.2 特征值法 4.3 代数法 5.算法实现 5.1 基于迭代法 ...

  7. Blender 快捷键笔记

    A Select All/Unselect All shift+A Create Z 切换wireframe和solid mode TAB Start or quit EditMode B Activ ...

  8. Centos7 安装 scrapy

    Centos7 安装 scrapy ( *:此python版本为 2.7 ) 1.先安装 python (2.7) 在安装 scrapy 要先安装 python 和 pip,  链接:https:// ...

  9. 网络学习day03_IP地址概述与应用

    IP地址 IP地址的定义及分类 主机唯一的标识,保证主机间正常通信 一种网络编码,用来确定网络中一个节点 IP地址是一个32位的二进制数 常见的IP地址,分为IPv4与IPv6两大类. ipv4的形式 ...

  10. maven 一些整理

    1.发布jar包到私服,需要进入项目目录 发布jar   :mvn deploy 发布源码 :mvn source:jar deploy,这个需要依赖一个maven插件: <plugin> ...