详解VUE单页应用骨架屏方案

yizhihongxing

标题:详解VUE单页应用骨架屏方案

什么是骨架屏

骨架屏即为页面骨架,通俗点来说就是一个页面还没加载完成时,所出现的一种页面展示方案。它将页面大致的结构和样式提前定义好,填充占位元素在视觉上证明了页面正在加载。而实际上用户看到的只是一个假象,等待页面正式加载完成后,占位元素会被替换成真实的内容。

骨架屏在VUE单页应用中的应用

在VUE单页应用中,页面通过异步加载,很多时候需要等待异步请求完成之后才能正式显示页面,这时候我们可以使用骨架屏来占位。

实现方法

方案1: vue-content-loader

vue-content-loader是一个基于SVG实现的VUE组件,通过内嵌SVG来实现自定义骨架屏的功能。

在使用vue-content-loader时,我们可通过参数来定义骨架屏的生成条件。示例如下:

<template>
  <content-loader :width="400" :height="500" : animate="true">
     <rect x="20" y="20" rx="4" ry="4" width="100" height="10" />
     <rect x="20" y="40" rx="3" ry="3" width="50" height="10" />
     <rect x="20" y="60" rx="3" ry="3" width="100" height="10" />
     <rect x="20" y="80" rx="6" ry="6" width="200" height="10" />
     <circle cx="30" cy="30" r="30" />
  </content-loader>
</template>

上面的代码就定义了一个带有五个元素的骨架屏,每个元素对应页面中一个具体的区域,通过参数可以定义每个元素的位置、大小、形状、动画等等。

方案2: vue-skeleton-webpack-plugin

除了vue-content-loader,我们还可以基于webpack插件来实现骨架屏的生成。vue-skeleton-webpack-plugin是一个成熟的webpack插件方案。

使用vue-skeleton-webpack-plugin,我们需要在webpack配置文件中进行相关配置。具体的流程可参见官方文档。

示例

我们可以在项目中仿照下面的示例来实现骨架屏的效果。

示例1:通过vue-content-loader来实现

在示例中,我们通过在Home.vue组件中引用vue-content-loader组件来实现骨架屏。

<template>
    <div>
        <content-loader :width="400" :height="500" : animate="true">
           <rect x="20" y="20" rx="4" ry="4" width="100" height="10" />
           <rect x="20" y="40" rx="3" ry="3" width="50" height="10" />
           <rect x="20" y="60" rx="3" ry="3" width="100" height="10" />
           <rect x="20" y="80" rx="6" ry="6" width="200" height="10" />
           <circle cx="30" cy="30" r="30" />
        </content-loader>
    </div>
</template>

示例2:通过vue-skeleton-webpack-plugin来实现

我们也可以使用vue-skeleton-webpack-plugin来实现骨架屏的效果。以下是一份简单示例:

plugins: [
    new SkeletonWebpackPlugin({
      webpackConfig: {
        entry: {
          app: path.join(__dirname, './src/entry-skeleton.js')
        }
      },
      router: {
        mode: 'hash',
        routes: [
          { path: '/home', skeletonId: 'home' },
          { path: '/info', skeletonId: 'info' }
        ]
      }
    })
  ]

总结

VUE骨架屏生成方案很多,上面介绍的只是其中两种。骨架屏能够有效提升页面的用户体验,减少用户等待时间,尤其在移动端,其效果更加明显。我们在项目中使用骨架屏来占位会更好的体现我们的专业性和敬业精神。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解VUE单页应用骨架屏方案 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • C#实现的微信网页授权操作逻辑封装示例

    Sure, 下面是关于“C#实现的微信网页授权操作逻辑封装示例”的攻略。 简介 微信网页授权是一个重要的功能,它允许用户通过微信公众平台进行网页授权并获取相应的用户信息。C#是一种广泛使用的编程语言,可以通过C#编写程序进行微信网页授权操作的逻辑封装。 本篇攻略将介绍如何使用C#实现微信网页授权操作逻辑的封装。过程中,强烈建议您具备一定的C#编程实践经验,并…

    Vue 2023年5月28日
    00
  • vue-print-nb实现页面打印功能实例(含分页打印)

    让我来详细讲解一下“vue-print-nb实现页面打印功能实例(含分页打印)”的完整攻略。 1. 引入 vue-print-nb 首先,需要在 Vue 项目中引入 vue-print-nb 插件,可以使用 npm 或 yarn 进行安装: npm install vue-print-nb –save 或 yarn add vue-print-nb 引入方…

    Vue 2023年5月27日
    00
  • vue项目打包部署流程分析

    下面就来详细讲解一下“vue项目打包部署流程分析”的完整攻略。 首先,我们需要了解打包部署的基本流程,一般分为如下几步: 运行npm run build,生成打包后的静态资源 将打包后的静态资源文件上传至服务器 配置nginx等反向代理服务器,使静态资源文件能够被访问到 具体的细节和注意事项,并且需要根据具体情况进行不同的操作。 下面我以两条具体的示例来说明…

    Vue 2023年5月28日
    00
  • Vue常用的修饰符及应用场景解读

    下面是“Vue常用的修饰符及应用场景解读”的完整攻略。 修饰符简介 Vue.js通过修饰符的方式,为指令提供了多种功能扩展。接下来介绍Vue常用的修饰符及应用场景。 .stop 修饰符.stop可以阻止事件冒泡,即在事件被触发后该元素的父元素不会再次触发该事件。 例如,以下代码段中,div的点击事件不会触发li的点击事件: <div @click=&q…

    Vue 2023年5月28日
    00
  • vue项目查看vue版本及cli版本的实现方式

    要查看Vue版本以及CLI版本,需要在控制台中使用命令来完成。下面是具体的步骤和示例: 步骤1:查看Vue版本 在控制台中运行以下命令: vue –version 在命令行中,你应该看到Vue的版本号。例如: Vue CLI 4.2.3 这意味着你正在使用Vue CLI4的最新版本。 步骤2:查看CLI版本 在控制台中运行以下命令: vue info 这将…

    Vue 2023年5月28日
    00
  • vue2.0的计算属性computed和watch的区别及各自使用场景解读

    Vue2.0的计算属性computed和watch的区别及各自使用场景解读 Vue2.0中,Vue实例提供了两种方法:computed和watch来追踪和响应状态变化。 计算属性computed 定义:computed是一个计算属性,其返回值依赖于其他的状态数据。computed属性默认只有getter方法,因此不可以修改。 示例 <template&…

    Vue 2023年5月29日
    00
  • 关于vue3中的reactive赋值问题

    Vue3中的reactive函数是实现响应式原理的重要工具,它会将对象转化成响应式的对象(Reactive Object),并返回该响应式对象的代理对象(Proxy),这个代理对象会拦截响应式对象的访问和修改,从而实现数据驱动视图的效果。在使用Vue3的开发过程中,我们需要注意一些关于reactive对象赋值的问题。 关于赋值的问题 在Vue3中使用reac…

    Vue 2023年5月29日
    00
  • vue3.0如何使用computed来获取vuex里数据

    下面是一份Vue3.0如何使用computed来获取Vuex里数据的攻略: 1. 简介 在使用Vue的过程中,经常遇到需要自动计算属性的情况,而Vuex作为Vue的全局状态管理工具,也经常用于存储应用程序的状态。在Vue3.0及以上版本中,可以使用computed选项来获取Vuex里的数据,并自动计算属性,非常方便。下面将为大家详细介绍vue3.0如何使用c…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部