<template>
<div v-loading="loading">
<el-table :data="data"
border
size="small">
<el-table-column type="selection"
align="center"
width="65"
min-width="65"
>
<template #header>
選択
</template>
<template #default="scope">
<el-radio v-model="currentFactor"
:label="scope.row"
:disabled="selected(scope.row)"
@input="clickChange"
>
{{ }}
</el-radio>
</template>
</el-table-column>
</el-table>
</div>
</template>
export default {
name:'table',
data(){
return {
// 表格展示数据
data:[],
// 单选选择数据
currentFactor: {},
// 确认选择的数据
selectedAdjustList:[]
}
},
methods:{
// 单选操作
clickChange(row) {
// 因为是单选,所以每次选择之前先进行清空操作
this.selectedAdjustList = []
// 数据添加
this.selectedAdjustList.push({
wkInfoDto: row,
})
},
// 不可选设置
selected(row) {
// 自己的逻辑判断
return Number(row.copyType) !== 1
},
}
}
注意:
1. 表头标题设置需要使用插槽 #header
2. 单选框的展示一定需要加上 {{ }} 在中括号中存在空格
3. disabled不可选的设置需要替换为自己的逻辑判断