iview Table组件使用过滤器时无法加载表头解决办法


iview Table组件使用过滤器时无法加载表头解决办法

2018-10-01 15:08:50

  • JavaScript
  • 前端
  • vue
  • iview

所遇到的问题

使用iview搭建社团用人员管理时,Table组件的columns中filters属性设置为Vue data 中的另一个对象

如下:
 data() {
    groupFilter: [],
    memberCol: [
        {
          title: "组别",
          render: (h, params) => {
            return h("div", [h("span", params.row.group.groupName)]);
          },
          filters: [this.groupFilter],
          filterMultiple: true,
          filterMethod(value, row) {
            return row.group.groupName == value;
          }
        }
      ]
  }

后无法显示表头,并报错
TypeError: Cannot read property ‘value’ of undefined

此对象会在Vue created时调取后台组别数据后被赋值

解决方法:

将data中columns的过滤器置空:

filters: []

并在调取后台数据后赋值给过滤器:

 Util.ajax({
    method: "GET",
    url: "/group/list"
  }).then(res => {
    self.groupList = res.data;
    self.groupList.forEach(group => {
      self.groupFilter.push({
        label: group.groupName,
        value: group.groupName
      });
    });
    self.memberCol[4].filters = self.groupFilter;
  });
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值