脚手架不说了,提前搭建好
然后安装 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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com
暂无“vue-cli 构建骨架屏的方法示例”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。