element表格实现单选框

利用checkbox来实现表格单选,思路就是将checkbox的值绑定到当前行mainFlag,定义checkbox的change事件,每当值改变时将上次选中的行数据mainFlag改给false

html 复制代码
 <template>
    <el-table
      :data="tableData"
      style="width: 100%">
      <el-table-column label="单选项" width="50">
            <template slot-scope="scope" >
              <el-checkbox 
              @change="handleChangeMain( scope.row,scope.$index)" 
              v-model="scope.row.mainFlag" >
              </el-checkbox>
            </template>
          </el-table-column>
      <el-table-column
        prop="date"
        label="日期"
        width="180">
      </el-table-column>
      <el-table-column
        prop="name"
        label="姓名"
        width="180">
      </el-table-column>
      <el-table-column
        prop="address"
        label="地址">
      </el-table-column>
    </el-table>
  </template>

data中定义mainPetionIndex用来记录上一次选择的下标

javascript 复制代码
 handleChangeMain(row,index){
      if(row.mainFlag){
        if(this.mainPetionIndex != -1){
          console.log('mainPetionIndex', this.mainPetionIndex)
          this.tableData[this.mainPetionIndex].mainFlag = false
        }
        this.mainPetionIndex = index;
      }else{
        this.mainPetionIndex=-1;
      }
    },
相关推荐
Chase_______8 分钟前
【JAVA基础指南(四)】快速掌握类和对象
java·开发语言
KiefaC10 分钟前
【C++11】包装器及其应用
开发语言·c++
weixin_4707403610 分钟前
python生成环境部署
开发语言·python
环黄金线HHJX.10 分钟前
【QuantumTuan:Qt】
开发语言·qt
Eiceblue10 分钟前
Python 实现 CSV 转 TXT 格式 (单文件 + 批量处理)
开发语言·python·visual studio code
C_心欲无痕23 分钟前
网络相关 - 常用命令详解Telnet、Ping 及其他实用工具
前端·网络
JarvanMo32 分钟前
没有人比我更懂Flutter第三方依赖鸿蒙化了之Sqflite
前端
lsx20240633 分钟前
C 标准库 - `<time.h>`
开发语言
子洋1 小时前
AI Agent 设计模式 - PlanAndExecute 模式
前端·人工智能·后端
福楠1 小时前
C++ STL | vector
开发语言·c++·算法