关于element ui 的一个问题 table 组件里面prop属性

<el-table :data="testData" border>
            <el-table-column prop="a[0].a"></el-table-column>
            <el-table-column prop="b.b"></el-table-column>
            <el-table-column prop="c.c"></el-table-column>
            
        </el-table>

data

testData: [{
    a: [{ a: '1a' }],
    b: { b: '1b' },
    c: { c: '1c' }
  }, {
    a: { a: '2a' },
    c: { c: '2c' }
  }, {
    a: { a: '3a' },
    b: { b: '3b' },
    c: { c: '3c' }
  }
]

j结果是这样的
图片描述

如果改成对象就可以出来数据:a.a

<el-table :data="testData" border>
            <el-table-column prop="a.a"></el-table-column>
            <el-table-column prop="b.b"></el-table-column>
            <el-table-column prop="c.c"></el-table-column>
            
        </el-table>

图片描述

图片描述

在线预览也不行

回复
阅读 33.4k
3 个回答

prop应该是用字段名,数组这样的要用到template吧

类似这种

<el-table-column
  label="姓名"
  width="180">
  <template scope="scope">
    <p>姓名: {{ scope.row.name[0] }}</p>
  </template>
</el-table-column>

prop绑定的是:data数组中每一个元素对应的值,如testData=[{num:1,name:zhangsan},{num:2,name:lisi}],此时

<el-table :data="testData" border>
            <el-table-column prop="num" label="序号"></el-table-column>
            <el-table-column prop="name" label="姓名"></el-table-column>          
</el-table>

就会渲染出序号和姓名两行两列的表格,你数据写法不对,prop绑定的资源也不对

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏