在做链接跳转时,一般是用a标签或者link标签。但是当团队规范使用标签时,在modal(antd的版本4)中使用可能就有问题了。
报错内容是,发现link在使用时找不到路由上下文。因此报错。
原因:Link 组件在 return 语句中能够正常使用,而在 Modal.warning 的 content 中无法正常使用的原因是与 React 组件的渲染机制和 Modal 的实现有关。
确保 Modal 渲染在 Router 的上下文中。通常情况下,Modal 会被渲染到 body 的末尾,这可能会导致 Link 组件无法访问到 Router 的上下文。
解决方法:
在代码中加入
const [modal, contextHolder] = Modal.useModal();
并在render 中return时加入到里面
因此,在modal中使用时,一定要确保添加了context !!!