账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    antd的Table表格默认会勾选上次勾选的,怎么清除
    • 2018-06-22 00:00
    • 11
    64
    0

    我设置了默认勾选13,第一次提交(132)是对的,第二次,页面上还勾选着上次提交的,没有按getCheckboxProps配置的渲染,然后onChange这,输出的是上一次提交的(132)+本次默认(13)+新勾的(45)= [1, 3, 2, 1, 3, 4, 5]
    我是百思不得其解。

    
    
    class User extends Interval {
        constructor(props) {
            super(props);
            this.state = {
                synCode: [],
            }
        }
    
        render() {
            console.log(this.state.synCode);
            const _this = this;
            const rowSelection = {
                getCheckboxProps(record) {
                    return {
                        defaultChecked: record.leader === 1, // 配置默认勾选的列
                    };
                },
                onChange(selectedRowKeys) {
                    console.log('新来的',selectedRowKeys);
                    // console.log('原来的',_this.state.synCode);
                    _this.setState({synCode: selectedRowKeys})
    
                },
            };
           
            return (
                <Table rowSelection={rowSelection} columns={columns} dataSource={this.state.data} />
            );
        }
    }
    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 在antd的Table表格中,如果你想清除上次勾选的,你可以在勾选行的onClick事件处理函数中,设置checked属性为false

      例如:

      ```javascript import React, { useState } from 'react'; import { Table } from 'antd';

      function App() { const [checkAll, setCheckAll] = useState(false);

      const handleAll = () => { setCheckAll(!checkAll); };

      return (

      ); }

      export default App; ```

      在这个例子中,当用户点击所有的行时,handleAll函数会被调用,然后将checkAll属性设置为false。这样,当用户再次点击所有的行时,handleAll函数会被调用,checkAll属性将恢复为true,再次勾选上。

      注意,你需要在你的数据源中设置checked属性。如果你使用的是react的数据源,你可以这样做:

      javascript const dataSource = { // your data source columns: [ { title: 'Column 1', dataIndex: 'column1', key: 'column1', 勾选: ['勾选', '勾选'], }, // other columns ], };

      更多回答
      扫一扫访问手机版
      • 回到顶部
      • 回到顶部