当前位置: 首页 > news >正文

提升用户体验的利器——使用Vue-Occupy实现占位效果

图片描述

项目地址:https://github.com/jrainlau/v...
DEMO:https://jrainlau.github.io/vu...

介绍

Vue-Occupy是一个vue指令,能够在数据被加载之前使用一个可配置的色块进行占位,能够有效提升用户体验。

安装

使用yarn或者npm的方式进行安装:

# yarn
yarn add vue-occupy

# npm
npm install vue-occupy

使用

进入项目入口文件,添加以下代码:

import VueOccupy from 'vue-occupy'

Vue.use(VueOccupy)

这样,vue-occupy已经被注册为一个全局的指令,你可以在任意.vue文件里面通过v-occupy使用。

参数

参数类型描述是否必须
data{Object}将要绑定在节点上的数据Yes
config{Object}占位色块的配置项No

举例:

<template>
  <div id="app" style="width:200px;height:50px;">
    <div v-occupy="{ data: content, config }"></div>
  </div>
</template>

<script>
export default {
  data () {
    return {
      content: '',
      config: {
        width: '200px',
        height: '18px',
        background: '#ddd'
      }
    }
  },
  mounted () {
    fetch(url).then((result) => {
      this.content = result
    })
  }
}
</script>

fetch方法返回数据之前,<div v-occupy="{ data: content, config }"></div>这个节点会被一个矩形色块所占据。当数据被成功返回后,色块将会被替换成content的内容。

注意:vue-occupy的默认配置项是这样的:

{
  width: 100%; 
  height: 100%; 
  background: #eee
}

经过vue-occupy处理的节点会变成下面这样:

<div v-occupy="{ data: content, config }">
  <div style="width: 100%; height: 100%; background: #eee;></div>
</div>

这意味着,你必须设置具体的widthheight于你使用了v-occupy的节点,又或者你可以通过自定义配置项来覆盖默认的样式。

证书

MIT

相关文章:

  • js 获取图片url的Blob值并预览
  • thinkphp5在URL地址里隐藏模块名
  • Rancher v1.2:网络架构解读
  • mongodb 数组操作
  • linux的运维管理UNIT4
  • 细说firewalld和iptables
  • Linux基础知识(2)
  • 2016-2017-2点集拓扑作业拾遗
  • Google安全视频
  • webpack笔记1
  • httpclient就是个能发送http连接的工具包,包括能发送post请求和get请求
  • oracle中根据时间获取最新的一条数据
  • 深入理解 JavaScript 异步系列(2)—— jquery的解决方案
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • 我的决心书
  • 深入了解以太坊
  • 03Go 类型总结
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • miaov-React 最佳入门
  • MySQL数据库运维之数据恢复
  • nodejs调试方法
  • Redis学习笔记 - pipline(流水线、管道)
  • 反思总结然后整装待发
  • 分布式熔断降级平台aegis
  • 观察者模式实现非直接耦合
  • 浏览器缓存机制分析
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 一个项目push到多个远程Git仓库
  • 原生JS动态加载JS、CSS文件及代码脚本
  • # 安徽锐锋科技IDMS系统简介
  • #stm32驱动外设模块总结w5500模块
  • (Git) gitignore基础使用
  • (二十四)Flask之flask-session组件
  • (转)C#调用WebService 基础
  • (转)Linq学习笔记
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转)Windows2003安全设置/维护
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • .gitignore文件_Git:.gitignore
  • .net framework 4.0中如何 输出 form 的name属性。
  • .net refrector
  • .Net各种迷惑命名解释
  • [2]十道算法题【Java实现】
  • [Avalon] Avalon中的Conditional Formatting.
  • [BUG]Datax写入数据到psql报不能序列化特殊字符
  • [bug总结]: Feign调用GET请求找不到请求体实体类
  • [C++]打开新世界的大门之C++入门
  • [CentOs7]图形界面
  • [Docker]四.Docker部署nodejs项目,部署Mysql,部署Redis,部署Mongodb
  • [ERROR] 不再支持目标选项 5。请使用 7 或更高版本
  • [ESP32] 编码旋钮驱动
  • [E链表] lc83. 删除排序链表中的重复元素(单链表+模拟)
  • [lintcode easy]Maximum Subarray
  • [node] Node.js的全局对象Global