vue3+ts+element-plus的表格的复选框勾选问题?

image.png

// 勾选复选框事件
const handleSelectionChange = (selection: User) => {
  let selectedRow:any = {}
  let unselectedRow:any = {}
  if (selection.length > multipleSelection.value.length) {
    // 当前行被选中
    selectedRow = selection.find((row: any) => !multipleSelection.value.includes(row));
    updateData(selectedRow)
    console.log('选中当前行:', selectedRow);
  } else {
    // 当前行被取消选中
    unselectedRow = multipleSelection.value.find((row: any) => !selection.includes(row));
    updateData(unselectedRow)
    console.log('取消选中当前行:', unselectedRow);
  }
}

后端返回的数据里面有个enable值,这个是判断表格是否选中,为ture的时候默认选中false的不选中

// 改变是否选中的状态
const updateData = (row:any) => {
  SigCategoryUpdate({
    id: row?.id,
    category: row?.category,
    enable: row?.enable ? false : true
  }).then(res => {
    if(res.code === 200) {
    // 这个是从新请求表格的数据
      getRuleManageData()
    }
  })
}

想要实现的效果是 如果是默认选中的时候,点击取消选中,获取到这一行的数据,传给后端,成功以后在掉一次表格的请求接口,没有选中的时候,点击勾选进行选中,获取到这一行的数据,传给后端,成功以后在掉一次表格的请求接口

现在的 问题是点击勾选的时候,选中了,也请求成功了,但是闪一下选中的效果又没了 又成了没选中
麻烦各位指正一下

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