欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Skeleton Screen骨架屏加载代码分享

程序员文章站 2024-03-25 10:10:16
...

示例:

Skeleton Screen骨架屏加载代码分享

此功能在vue项目上编写

文档出于Ant Design

https://ant.design/components/skeleton-cn/

希望各位小伙伴多多点赞收藏转发

源码给上:

首先现在项目里引入skeleton.js

vue项目引入方式

import skeleton from 'vue-skeleton-component'
Vue.use(skeleton)

HTML

<template>
	<div class="weui-panel weui-panel_access">
		<!-- list -->
		<div class="article-list-div">
			<p style="color: rgba(0,0,0,.9);font-size: 15px;font-weight: 700;padding-left: 16px;line-height: 50px;border-bottom: 1px solid rgba(0,0,0,.1);">
				vue版骨架屏渲染			</p>
			<div class="article-render" v-for="item in articleList" :key="item">
				<div class="header-img">
					<img :src="item.img" alt="">
				</div>
				<div class="article-info">
					<p class="title">
						{{ item.title }}					</p>
					<p class="des">
						{{ item.des }}					</p>
				</div>
			</div>
			<div class="article-render" v-for="item in 10" v-show="rendering">
				<div class="header-img">
					<skeleton type='circlecom' active :options="{width: '80px'}" />
				</div>
				<div class="article-info">
					<p class="title"></p>
					<p class="des">
						<skeleton type='listcom' active :options="{row: 3,lineHight: 20}" />
					</p>
				</div>
			</div>
		</div>
	</div>
</template>

CSS

.article-render {
		padding: 15px;
		overflow: hidden;
}.header-img {
		width: 80px;
		height: 80px;
		display: inline-block;
		float: left;
}.header-img img{width: 100%;height: 100%;}
.article-info {
		padding-left: 100px;
}.article-info p {
		font-size: 20px;
		color: #666;
}.article-info .title {
		margin-bottom: 5px;
}.article-info .des {
		font-size: 14px;
		color: #888;
}.CircleCom_OPdPNcc3,
.listCom_2QHM1mDh {
		padding: 0;
}

JS

export default {
		name: 'Skeleton',
		data() {
			return {
				articleList: [],
				rendering:true,
			}
		},
		mounted() {
			this.articleListRender();
		},
		methods: {
			articleListRender() {
				this.articleList = [{
					img: 'https://dss0.baidu.com/73t1bjeh1BF3odCf/it/u=2858001215,828905968&fm=85&s=B82356320341414110475CDE0300F0BB',
					title: '网页骨架屏',
					des: `什么是骨架屏呢?骨架屏(Skeleton Screen)是指在页面数据加载完成前,先给用户展示出页面的大致结构(灰色占位图),在拿到接口数据后渲染出实际页面内容然后替换掉。Skeleton Screen 是近两年开始流行的加载控件,本质上是界面加载过程中的过渡效果。
					假如能在加载前把网页的大概轮廓预先显示,接着再逐渐加载真正内容,这样既降低了用户的焦灼情绪,又能使界面加载过程变得自然通畅,不会造成网页长时间白屏或者闪烁。这就是 Skeleton Screen !`
				},{
					img: 'https://dss0.baidu.com/73x1bjeh1BF3odCf/it/u=245465413,3123130741&fm=85&s=409708722C735BAF750BBBFB0300A02F',
					title: '客户端骨架屏详解',
					des: `一直以来,无论是Web还是iOS、Android的应用中,为了提升应用的加载等待这段时间的用户感知体验,各种技术层出不穷。其中,尤以菊花图以及由它衍生各种加载动画最为突出。
对于菊花图我们自不必多说,现在对于加载的设计体验有了比菊花加载体验更棒的方法,即大家常看到的Skeleton Screen Loading,中文叫做骨架屏。`
				},{
					img: 'https://dss0.bdstatic.com/6Ox1bjeh1BF3odCf/it/u=1597993201,2281568722&fm=173&app=49&f=JPEG?w=312&h=208&s=E9C23366BE27B77452E967BA0300C086',
					title: '迅雷X 10.1.27正式版发布:优化下载引擎',
					des: `IT之家12月24日消息 此前迅雷X已发布了正式版,Electron软件框架完全重写了迅雷X主界面,并且对下载引擎进行了全面的改进升级。适配了2K/4K高清屏幕,文字显示效果也变得更加清晰细腻。`
				},{
					img: 'https://pics4.baidu.com/feed/f703738da97739120882827c20b4c51e377ae2bf.jpeg?token=04ec19cc16ec6299d06d3ecd06373c62&s=5E1039C458705A9ACC9184F50300C012',
					title: '微信小程序直播功能来了,然后呢?',
					des: `很荣幸2月14日自家的小程序收到了腾讯小程序直播功能的内测邀请,今天闲下来把这个功能的前后端界面设计和一些分析梳理出来,让更多的小伙伴可以先睹为快!`
				},{
					img: 'https://pics3.baidu.com/feed/18d8bc3eb13533fa848faa42f1ccb91941345b41.jpeg?token=067457b905636c3d5fd90e6448013968&s=3141F1042CE9090531AEAF510300D0D9',
					title: '来往的继续,钉钉从未放弃“社交”与“圈子”',
					des: `2月25日晚7点半,钉钉CEO无招准时与全国2亿组织成员召开线上发布会。但与其说是一场新品发布会,不如说是一场专门为疫情期,疫情后的一场钉钉解决方案全家桶。无招指出,这是钉钉与阿里云、达摩院、支付宝、阿里企业智能等集团部门的通力合作。
发布会上,无招先回溯了钉钉抗疫期间,紧急上线的员工健康打卡、企业复工平台、“无接触考勤”解决方案等多款解决方案,以满足企业复工复产的需求。随后,有关钉钉5.0版本“巴颜喀拉”正式亮相,“在线办公室”功能、构建私域流量新入口“圈子”成为本次发布会最大的亮点。`
				},{
					img: 'https://pics2.baidu.com/feed/37d3d539b6003af31dbb4b4865ac855a1038b625.jpeg?token=9a34768e588792560c198e13d2d5223b&s=E9C23A66F2E0935541F5E88A01007093',
					title: '传iPhone12将支持新近距离Wi-Fi标准',
					des: `据了解,802.11ay是IEEE 802.11ad的后续规范,将带宽提高了四倍,并增加了多达4个多路传输/接收流。使用60GHz频谱的新Wi-Fi规范仍处于起草阶段,但预计将于2020年底完成。
该博客称这种无线标准为“超短距离”,这表明该标准可用于在iPhone例如AirDrop和附近其他苹果设备之间进行通信。`
				},{
					img: 'https://pics0.baidu.com/feed/aa64034f78f0f736aaa55d2481acf01feac413be.jpeg?token=25b7e5f59b3dc0bcefe2327e2a3f566a&s=99F674844B230E0D18AFB90B030010C9',
					title: '5G基带四巨头的Wi-Fi 6芯片之战',
					des: `当大部分人的手机仍畅游在Wi-Fi 5网络中的时候,Wi-Fi 6已经悄然到来。去年2月,三星发布的Galaxy S10是首批支持Wi-Fi 6标准的手机,去年9月发布的iPhone 11系列也支持了Wi-Fi 6标准。
到了最近,小米10以及华为Mate Xs也都宣布支持Wi-Fi 6,小米和华为的Wi-Fi 6路由器也相继亮相。`
				},{
					img: 'https://pics3.baidu.com/feed/95eef01f3a292df5f07a26e138b5186635a87317.jpeg?token=943daefcfe18e026a5cff93854cece47&s=D0B519D24470CF984526DBF003005035',
					title: 'iPhone 9最新渲染图:外观落伍,售价是唯一亮点',
					des: `随着各方面的逐渐复苏,越来越多的的安卓旗舰新机也在不断地发布。相信有一直关注明美无限的果粉们应该都了解,明美无限坚持分享的还是iPhone、iOS、苹果最新的那些事。`
				},{
					img: 'https://pics4.baidu.com/feed/a8ec8a13632762d02315d92b6c514cfc503dc6bb.jpeg?token=c14f9084ef0e2f6dc3b605235939fb90&s=29E2A109584396DC453BE5950300008B',
					title: '产业互联网的利刃,剜除社交电商的顽疾',
					des: `虽然很多人都在说电商行业正在经历一场从未有过的大调整,但是,大调整的同时,电商行业并未停止进化,这个发展业已成熟的行业正在为寻找新的发展契机而努力。社交电商便是在这样的大背景下诞生的。从表面上看,电商行业业已被阿里、京东为代表的头部电商平台所把持,新玩家的进入难度不断增加。实质上,电商行业依然存在机会,只要我们找准突破口,即使是在头部电商平台的围追堵截之下,依然有机会脱颖而出,`
				},{
					img: 'https://pics5.baidu.com/feed/b3b7d0a20cf431ad104336725821e8a92fdd9881.jpeg?token=5556ac13b928442e5c04484363b9a1b9&s=7802EC12430272F256A459E003003020',
					title: 'iPhone9宣传海报流出:6种颜色时尚感爆棚,三千块值了!',
					des: `随着时间的推移,2月份马上就要落下帷幕,不少厂商已经在这个月发布了新机,其中就包括小米10,iQOO3,realme X50 Pro,索尼X1 ll,三星S20系列等。而在3月份,我们还要迎来一些重磅新机,包括一加8,华为P40还有苹果的iPhone9。相比其它手机来说,
iPhone9作为唯一的苹果手机,相信期待的人会更多吧。而且iPhone9的最大特点就是首款三千档却配备了目前最强旗舰芯片的苹果手机,同时在屏幕尺寸上iPhone9仅4.8寸,是时下唯一的小屏旗舰机。`
				},]
				this.rendering = false;
			}
		},
	}