vue-cli 构建骨架屏的方法示例


Posted in Javascript onNovember 08, 2018

脚手架不说了,提前搭建好

然后安装 vue-skeleton-webpack-plugin

npm install vue-skeleton-webpack-plugin

创建文件 skeleton.js和skeleton.vue

skeleton.js

import Vue from 'vue'

import Skeleton from './Skeleton.vue'


export default new Vue({

components: {

Skeleton

},

template: '<skeleton />'

})

skeleton.vue

我的skeleton.vue不知为何<style>标签写在外部没有加载进去,故写到<template>内

样式和模板可以自己修改

<template>

<div class="skeleton-wrapper">
<style>
.skeleton {
padding: 10px;
}

.skeleton .skeleton-head,
.skeleton .skeleton-title,
.skeleton .skeleton-content-bottom,
.skeleton .skeleton-content {
background: rgba(194, 207, 214,.5);
background-image: linear-gradient(90deg,rgba(255, 255, 255, 0.15) 25%, transparent 25%);
background-size: 20rem 20rem;
animation: skeleton-stripes 1s linear infinite;
margin: 0 auto 30px;
text-align: center;
color: darkgray;
}

.skeleton-head {
width: 100px;
height: 60px;
float: left;
}

.skeleton-body {
margin-left: 110px;
}

.skeleton-title {
width: 90%;
height: 60px;
line-height: 60px;
}

.skeleton-content {
width: 60%;
height: 40px;
background: rgba(194, 207, 214,.3)!important;
}
.skeleton-content-bottom {
width: 40%;
height: 40px;
margin: 0 auto 30px 20%!important;
background: rgba(194, 207, 214,.3)!important;
}
@keyframes skeleton-stripes {
from {
background-position: 0 0 ;
}
to {
background-position: 20rem 0;
}
}

</style>
<header class="skeleton-header"></header>
<section class="skeleton-block">
<div class="skeleton">
<div class="skeleton-head"></div>
<div class="skeleton-body">
<div class="skeleton-title">加载中</div>
<div class="skeleton-content"></div>
<div class="skeleton-content-bottom"></div>
<div class="skeleton-content"></div>
<div class="skeleton-content-bottom"></div>
<div class="skeleton-content"></div>
<div class="skeleton-content-bottom"></div>
<div class="skeleton-content"></div>
<div class="skeleton-content-bottom"></div>
<div class="skeleton-content"></div>
</div>
</div>
</section>
</div>
</template>

<script>
export default {
name: 'skeleton'
}
</script>

在build 目录下创建 webpack.skeleton.conf.js

'use strict';

const path = require('path')
const merge = require('webpack-merge')
const baseWebpackConfig = require('./webpack.base.conf')
const nodeExternals = require('webpack-node-externals')

function resolve(dir) {
return path.join(__dirname, dir)
}

module.exports = merge(baseWebpackConfig, {
target: 'node',
devtool: false,
entry: {
//指向自己的skeleton.js路径
app: resolve('../src/renderer/skeleton/skeleton.js')
},
output: Object.assign({}, baseWebpackConfig.output, {
libraryTarget: 'commonjs2'
}),
externals: nodeExternals({
whitelist: /\.css$/
}),
plugins: []
})

大功告成

vue-skeleton-webpack-plugin 可以 使用多个 骨架屏 ,具体的可以查看官网地址: https://github.com/lavas-project/vue-skeleton-webpack-plugin

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery中获得$.ajax()事件返回的值并添加事件的方法
Apr 15 Javascript
javascript中的对象创建 实例附注释
Feb 08 Javascript
JQuery与JS里submit()的区别示例介绍
Feb 17 Javascript
js键盘事件的keyCode
Jul 29 Javascript
jQuery如何防止这种冒泡事件发生
Feb 27 Javascript
跟我学习javascript的prototype,getPrototypeOf和__proto__
Nov 17 Javascript
ReactJs快速入门教程(精华版)
Nov 28 Javascript
微信小程序 详解下拉加载与上拉刷新实现方法
Jan 13 Javascript
利用transition实现文字上下抖动的效果
Jan 21 Javascript
vue结合axios与后端进行ajax交互的方法
Jul 06 Javascript
快速了解Node中的Stream流是什么
Feb 13 Javascript
react quill中图片上传由默认转成base64改成上传到服务器的方法
Oct 30 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
Nov 08 #Javascript
详解在不使用ssr的情况下解决Vue单页面SEO问题
Nov 08 #Javascript
Vux+Axios拦截器增加loading的问题及实现方法
Nov 08 #Javascript
Angular设置别名alias的方法
Nov 08 #Javascript
vue-cli安装使用流程步骤详解
Nov 08 #Javascript
vue项目动态设置页面title及是否缓存页面的问题
Nov 08 #Javascript
vue-awesome-swiper 基于vue实现h5滑动翻页效果【推荐】
Nov 08 #Javascript
You might like
第十二节 类的自动加载 [12]
2006/10/09 PHP
将OICQ数据转成MYSQL数据
2006/10/09 PHP
首页四格,首页五格For6.0(GBK)(UTF-8)[12种组合][9-18][版主安装测试通过]
2007/09/24 PHP
PHP 正则表达式小结
2015/02/12 PHP
分析php://output和php://stdout的区别
2018/05/06 PHP
PHP getID3类的使用方法学习笔记【附getID3源码下载】
2019/10/18 PHP
Prototype使用指南之selector.js说明
2008/10/26 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
2015/03/13 Javascript
js+html5获取用户地理位置信息并在Google地图上显示的方法
2015/06/05 Javascript
jQuery自定义滚动条完整实例
2016/01/08 Javascript
Javascript动画效果(3)
2016/10/11 Javascript
Web纯前端“旭日图”实现元素周期表
2017/03/10 Javascript
React教程之封装一个Portal可复用组件的方法
2018/01/02 Javascript
vue 微信授权登录解决方案
2018/04/10 Javascript
vue生命周期和react生命周期对比【推荐】
2018/09/19 Javascript
vue 左滑删除功能的示例代码
2019/01/28 Javascript
微信小程序顶部导航栏滑动tab效果
2019/01/28 Javascript
jQuery zTree插件快速实现目录树
2019/08/16 jQuery
小程序怎样让wx.navigateBack更好用的方法实现
2019/11/01 Javascript
Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
2019/11/20 Javascript
Javascript类型判断相关例题及解析
2020/08/26 Javascript
python操作mysql数据库
2017/03/05 Python
python 中的int()函数怎么用
2017/10/17 Python
python中将字典形式的数据循环插入Excel
2018/01/16 Python
python 获取字符串MD5值方法
2018/05/29 Python
windows下 兼容Python2和Python3的解决方法
2018/12/05 Python
Python面向对象程序设计构造函数和析构函数用法分析
2019/04/12 Python
JYSK加拿大:购买家具、床垫、家居装饰等
2020/02/14 全球购物
员工培训邀请函
2014/01/11 职场文书
材料加工工程求职信
2014/02/19 职场文书
群众路线领导班子四风对照检查材料
2014/09/27 职场文书
放牛班的春天观后感
2015/06/01 职场文书
Nginx服务器如何设置url链接
2021/03/31 Servers
单身狗福利?Python爬取某婚恋网征婚数据
2021/06/03 Python
SQL写法--行行比较
2021/08/23 SQL Server
联想win10摄像头打不开怎么办?win10笔记本摄像头打不开解决办法
2022/04/08 数码科技