美文网首页
Ant design vue 嵌套表格 获取父表格id

Ant design vue 嵌套表格 获取父表格id

作者: yimi珊 | 来源:发表于2020-10-28 17:32 被阅读0次

记录个问题
事情是这样的,我原本用了一个嵌套表格,想实现的是这样的



然后我就写了
(只放关键代码)

 <a-table :columns="columns" :data-source="tableData" class="components-table-demo-nested" :showHeader='false' :pagination='false'>
        <a-table
          slot="expandedRowRender"
          :columns="innerColumns"
          :data-source="tableData[0].node"
          :pagination="false"
        >  
        </a-table>
      </a-table>

结果却是这样的


image.png

然后我就网上搜,想得到父表格的id,这样我就能得到tableData的key了,不然显示的都是tableData[0]的数据
就搜到说使用@expand方法,里边有两个参数,其中一个就是 record,就是父表格本行的数据,这样就可以对子表格的数据进行修改了,然后我就试了一下
(只放关键代码)

<a-table :columns="columns" :data-source="tableData" class="components-table-demo-nested" :showHeader='false' :pagination='false' @expand="expand">
       <a-table
         slot="expandedRowRender"
         :columns="innerColumns"
         :data-source="innerData"
         :pagination="false"
       >
         
       </a-table>
     </a-table>
 expand(expanded, record){
      this.innerData=record.node;
    }

结果就是,
点哪行,所有的子表格就都是哪行的数据,就是所有子表格的数据都一样了

image.png

最后,实际解决方法,使用slot-scope="record"就可以获取record中的数据了....
:data-source="record.bak_node" 相当于我把父级表格的每行里边的bak_node里边的数据赋值给子表格

<a-table :columns="columns" :data-source="tableData" class="components-table-demo-nested" :showHeader='false' :pagination='false' @expand="expand">
        <a-table
          slot="expandedRowRender"
          slot-scope="record"
          :columns="innerColumns"
          :data-source="record.bak_node"
          :pagination="false"
        > 
        </a-table>
      </a-table>

0.0,所以实际上并不需要获取父表格的id

相关文章

网友评论

      本文标题:Ant design vue 嵌套表格 获取父表格id

      本文链接:https://www.haomeiwen.com/subject/tprcvktx.html