antd的Tabs组件通过代码控制换页时为什么不触发onChang回调

发布于 2022-09-13 00:58:04 字数 1156 浏览 29 评论 0

import { useState } from "react";
import { Button, Tabs } from "antd";

const { TabPane } = Tabs;

const TabsTest = (props) => {
    const [activeKey, setActivekey] = useState('1');

    function callback(key) {
        setActivekey(key);
        console.log(key);
    }

    function onChangeTabPanel() {
        setActivekey('2');
    }

    return (
        <div>
            <Tabs activeKey={activeKey} onChange={callback}>
                <TabPane tab="Tab 1" key="1">
                    Content of Tab Pane 1
                </TabPane>
                <TabPane tab="Tab 2" key="2">
                    Content of Tab Pane 2
                </TabPane>
                <TabPane tab="Tab 3" key="3">
                    Content of Tab Pane 3
                </TabPane>
            </Tabs>

            <Button onClick={() => onChangeTabPanel()}>换到第2页</Button>
        </div>
    );
}

export default TabsTest;

上面的例子里,我希望点击 换到第2页 这个按钮时,界面切换到第2个TabPane,同时触发OnChang,但实际是界面切换到了第2个TabPane,没有触发OnChang。
问题是通过代码控制换页时,怎么做才会触发OnChang,或者有类似的其他回调事件可用吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文