【转】Vue v-loading实现加载效果


版权声明:本文为CSDN博主「No Silver Bullet」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sunhuaqiang1/article/details/95474410

————————————————

使用v-loading在接口为请求到数据之前,显示加载中,直到请求到数据后消失。

//全局loading
<template>
    <div v-loading="loading"> </div>
</template>

在data 中定义初始化, loading: false,同时在mounted()中将 this.loading设置为true,再去请求接口

在接口的回调函数中,将 this.loading 设为false,到达效果。

如果写在template下的顶层元素上的话,就不会触发全屏loading

//局部loading
<template>
    <div> 
        <section v-loading="loading"></section>
    </div>
</template>

实战

<template>
    <div class="grid-content bg-purple">
       <div>…………</div>
       <div>…………</div>     
        <div v-loading="loading" style="height: 280px;padding:16px;box-sizing:border-box;" id="xx">         
        </div>    
    </div>
</template>

<script>
import { getTbFun } from "../assets/js/api.js";
export default {
    name:'template1',
    data(){
      return{
      loading:true
      }
   },
     mounted() {
        this.getData();
     },
    methods:{
     getData() {
         getTbFun().then(function (res) {
                that.loading = false;
            })
            .catch(function (err) {
                console.log("err--------", err);
                that.loading = false;
            });
      },
   },
}
</script>

 




免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM