<el-table-column prop="name" align="center" width="200" label="角色"> <template v-slot="{ row }"> <el-input v-if="row.edit" v-model="row.name" size="mini" /> <span v-else>{{ row.name }}</span> </template> </el-table-column>代码解释
时间: 2023-11-11 15:49:02 浏览: 73
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
这段代码是使用 Element UI 的 `<el-table-column>` 组件来定义一个表格列。具体解释如下:
- `prop="name"`:指定该列要渲染的数据的属性名为 "name",即从数据源中获取 "name" 属性的值进行渲染。
- `align="center"`:设置该列中的内容在单元格中居中对齐。
- `width="200"`:设置该列的宽度为 200px。
- `label="角色"`:设置该列的标题为 "角色"。
在该表格列的模板中,使用了插槽 `<template v-slot="{ row }">` 来获取父组件传递给子组件的数据对象 "row"。然后根据 "row.edit" 的值来决定渲染什么内容:
- 如果 "row.edit" 为 true,则渲染一个可编辑的 `<el-input>` 输入框,通过 `v-model="row.name"` 双向绑定输入框的值到 "row.name" 属性。
- 如果 "row.edit" 为 false,则渲染一个 `<span>` 标签,显示 "row.name" 的值。
这样,在每一行的该列中,根据数据源中的 "edit" 属性的值来动态显示输入框或文本内容。
阅读全文