React中如何对Tabs组件进行激活tab?

我在页面a中,有使用一个组件TabsWithBreadcrumbs:
它是一个Tabs继承自 https://ant-design.antgroup.com/components/tabs-cn

我们知道:
tabs有激活的页面,
image.png

...
  return (
    <div className={styles.myTabsWithBreadcumpsContainer}>
      <div className= {styles.myTabsWithBreadcumps}>
        <TabsWithBreadcrumbs data={tabs}></TabsWithBreadcrumbs>
      </div>
    </div>
  )

我想要在页面B实现页面A的TabsWithBreadcrumbs 的激活key,可以激活第一个也可以激活第二个,请问应该如何做呢?

阅读 1.2k
2 个回答

通过全局状态库,或者自己设计顶层Context

tabs组件改成类似受控组件,传入activeKey

  const [activeKey, setActiveKey] = useGolablStore();


  const onChange = (newActiveKey: string) => {
    setActiveKey(newActiveKey);
  };

   <Tabs
      onChange={onChange}
      activeKey={activeKey}
    />

通过useGolablStore钩子,进行跨页面的状态通信,可以用redux、zustand 这些全局状态库

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