element-ui 2.7.2版本使用 表格展开行 功能遇到的奇葩问题?

在使用 element-ui 2.7.2版本的时候报下面的错误:

  [Vue warn]: Error in callback for watcher "data": "Error: if there's nested data, rowKey is required."

表面的意思是如果有嵌套的数据,需要在el-table标签中新增row-key字段。查阅文档element-ui 2.7.0 增加对树形结构数据的支持 ,而row-key是针对支持树类型的数据

而我需要的是展开行这个功能?

  已下面这个为例反复实现了几次:

    <el-table :data="tableData"></el-table>

  当tableData数据格式为以下形式时使用表格展开行功能,无任何问题

    tableData: [{
      name: '好滋好味鸡蛋仔',
      category: '江浙小吃、小吃零食',
      desc: '荷兰优质淡奶,奶香浓而不腻',
    }]

  当tableData数据格式为以下形式会出现上面的报错: 

    tableData: [{
      name: '好滋好味鸡蛋仔',
      category: '江浙小吃、小吃零食',
      desc: '荷兰优质淡奶,奶香浓而不腻',
      children:[{
        name:'土鸡蛋',
        desc:'美味...'
      }]
    }]

  问题就出现在key为children名字上,如果换成其他命名不会报错。。。。 

  如下可使用array.map函数处理下数据就可以解决问题了。。。

    let handleData = tableData.map(item => {
      return {
        name: item.name,
        category: item.category,
        desc: item.desc,
        childrens: item.children
      };
    });

    

  

  

原文地址:https://www.cnblogs.com/changxue/p/10719454.html