带复选框的可排序在el-table-column中不起作用

时间:2019-11-13 10:46:30

标签: vue.js element-ui

当我尝试使用第一列或第二列进行排序时,除了最后一列中的复选框之外,所有行都进行了排序。根据我的代码,最后一列是不相交的吗?

<el-table :data="items" stripe style="width: 50%">
                <el-table-column prop="email" label="email" sortable></el-table-column>
                <el-table-column prop="username" label="Username" sortable></el-table-column>
                <el-table-column label="Enable">
                    <template slot-scope="scope">
                        <el-checkbox :checked="scope.row.isSelected" @change="toggleEnable(scope.row)"  />
                    </template>
                </el-table-column>
            </el-table>

1 个答案:

答案 0 :(得分:1)

因此,基本上DOM并未更改,因此Vue无法识别更改。为了给Vue一个提示,使其可以跟踪每个节点的身份,从而重用和重新排列现有元素,您需要为每个项目提供唯一的key属性。如果是元素ui表,则应填写row-key属性。 table-atributes

中列出了

添加row-key将解决您的难题

使其生效的另一种方法是将:checked替换为v-model。但还是提供row-key