vbenjs / vue-vben-admin

A modern vue admin. It is based on Vue3, vite and TypeScript. It's fast!

Home Page:https://vben.vvbin.cn/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

在table点击checkbox会触发两次onChange回调,不知道是bug还是我写法问题

zhangyi1234 opened this issue · comments

⚠️ 重要 ⚠️ 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 已阅读 文档.
  • 确保您的代码已是最新或者所报告的 Bug 在最新版本中可以重现. (部分 Bug 可能已经在最近的代码中修复)
  • 已在 Issues 中搜索了相关的关键词
  • 不是 ant design vue 组件库的 Bug

描述 Bug

设置table属性 clickToRowSelect = false点击checkbox会触发两次onChange回调
设置table属性 clickToRowSelect = true 点击checkbox同样会触发两次onChange回调, 但是点击数据行 则正常 只触发一次

复现 Bug

  const handleSelectChange = (selectedRowKeys, selectedRows) => {
    console.log('handleSelectChange', Date.now());
    // handleStatistic(selectedRows);
  };
  const [registerTable, { reload, setSelectedRowKeys, getSelectRowKeys }] = useTable({
    rowSelection: {
      type: 'checkbox',
      fixed: true,
      onChange: handleSelectChange,
    },
    immediate: false,
    clickToRowSelect: false,
    rowKey: 'id',
    api: getData,
    pagination: false,
    columns: [
      {
        title: '名称',
        dataIndex: 'name',
        customRender: ({ record }) => {
          return record.get_material?.name;
        },
      },
    ],
    showIndexColumn: false,
    canResize: false,
  });

image

系统信息

  • 操作系统: macos
    "packageManager": "pnpm@9.0.4",
    "engines": {
    "node": ">=18.12.0",
    "pnpm": ">=9.0.2"
    }
    "name": "vben-admin",
    "version": "2.11.4",