Vue中请求接口使用elementUI的loading的显示功能

Vue中请求接口使用elementUI的loading的显示功能

要实现的功能描述:就是请求接口没返回数据的时候loading显示,返回数据后loading消失

  1. 在表格标签里引入loading样式,加载时的信息和绑定好表头和表格里面的数据

    :data="tableData"
    v-loading="loading"
    element-loading-text="拼命加载中"
    element-loading-spinner="el-icon-loading"
    element-loading-background="rgba(0, 0, 0, 0.3)"
    
  2. 定义值
    不要忘记定义loading的值

    data() {
          return {
            tableData: [{
              date: '2016-05-03',
              name: '王小虎',
              address: '上海市普陀区金沙江路 1518 弄'
            }, {
              date: '2016-05-02',
              name: '王小虎',
              address: '上海市普陀区金沙江路 1518 弄'
            }, {
              date: '2016-05-04',
              name: '王小虎',
              address: '上海市普陀区金沙江路 1518 弄'
            }],
            loading: false
          };
        }
    
  3. 请求数据,得到响应后加载框消失

    methods: {
    	getLoading(){
    		this.loading = true;
    		axios({
    		    url: url,
    		    method:'get',
    		}).then(function (res) {
    		    if (res.code === 200) {
    		    	this.loading = false
    		    }
    		}).catch(function (error) {
    		    console.log(error);
    		});
    	}
    }
    

效果图:
在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以通过在 `Tabs` 组件使用 `v-for` 指令来动态生成标签页,例如: ```html <template> <div> <a-tabs v-model="activeKey"> <a-tab-pane v-for="(item, index) in tabs" :key="index" :tab="item.title"> <a-card> <a-input placeholder="请输入关键字" v-model="item.searchKeyword" @input="handleInput(index)" /> <a-table :columns="item.columns" :data-source="item.dataSource" :loading="item.loading" /> </a-card> </a-tab-pane> </a-tabs> </div> </template> ``` 在 `data` 定义 `tabs` 数组,用于存储每个标签页的配置信息: ```js data() { return { activeKey: '0', tabs: [ { title: '标签页1', searchKeyword: '', columns: [ // 表格列的配置 ], dataSource: [ // 表格数据 ], loading: false }, { title: '标签页2', searchKeyword: '', columns: [ // 表格列的配置 ], dataSource: [ // 表格数据 ], loading: false }, // 其他标签页的配置信息 ] } } ``` 在 `methods` 定义 `handleInput` 方法,用于处理输入框的搜索功能: ```js methods: { handleInput(index) { const keyword = this.tabs[index].searchKeyword.trim() // 根据关键字过滤表格数据 this.tabs[index].dataSource = this.tabs[index].dataSource.filter(item => Object.values(item).some(val => String(val).includes(keyword)) ) } } ``` 这样每个标签页就都有了一个输入框和表格,并且可以根据输入框的关键字动态过滤表格数据。你只需要在每个标签页的配置信息设置对应的表格列和数据源,就可以实现动态生成标签页和表格了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值