请各位大哥给个思路,el-table 点击当前按钮,只改变当前行的状态

image.png

    <el-popconfirm
      title="是否禁用该类目"
      v-show="startUse"
      @confirm="confirm(scope.$index, scope.row)">
      <el-button type="text" size="small" slot="reference"
      >禁用</el-button>
    </el-popconfirm>
//禁用启用确定按钮事件
confirm(index, row) {
console.log(index, row, '2222')
this.startUse = false
},
阅读 5.4k
3 个回答

将全局的启用标识挂到行上,跟据行标识去控制显示隐藏,改动如下

   <el-popconfirm
    title="是否禁用该类目"
-   v-show="startUse"
+   v-show="scope.row._startUse"
    @confirm="confirm(scope.$index, scope.row)">
    <el-button type="text" size="small" slot="reference"
    >禁用</el-button>
   </el-popconfirm>
//...
//禁用启用确定按钮事件
 confirm(index, row) {
   console.log(index, row, '2222')
-  this.startUse = false
+  row._startUse = false 
 },

那你的状态就不应该共用一个startUse,而应该每一行数据都有一个状态startUse,点击禁用启用,改变当前行本身的startUse

旁边先写一个启用按钮,启用按钮先隐藏,点击完后通过v-if给出条件值将启用按钮显示,将禁用按钮隐藏

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