【问题标题】:Link not working in dashboard of react-admin链接在 react-admin 的仪表板中不起作用
【发布时间】:2019-08-04 10:29:34
【问题描述】:

我正在尝试从仪表板链接到我项目中的某些资源。我使用带有component={Link} 选项的按钮。

它改变了我的网址,但页面保持不变

JS 控制台报错: 不支持即时更改store。您很可能会看到此错误,因为您更新到 Redux 2.x 和 React Redux 2.x,它们不再自动热重载减速器。有关迁移说明,请参阅 https://github.com/reactjs/react-redux/releases/tag/v2.0.0

我的管理界面不在 root 中

<Button 
  component={Link} 
  to={{pathname: "/new_admin/#/issuing_history"}}
  type="button" color="success" size={"sm"}> 
</Button>

【问题讨论】:

  • 你使用的是来自 React Admin 还是 Material UI 的组件 Button

标签: hyperlink react-admin


【解决方案1】:

React Admin 正在使用 react-router 来管理其路由。

此外,来自 React Admin 的 &lt;Button&gt; 组件与 Material UI 的 API 不同。

如果你想要一个看起来像按钮的链接,你应该从 Material UI 中导入按钮并使用 react-router API 来触发路由更改。

import Button from '@material-ui/core/Button';
import { Link } from 'react-router-dom';

const MyButton = () => (
    <Button
        component={Link}
        to={{ pathname: "/issuing_history" }}
    />
);

【讨论】:

  • 我以前做过。它改变了我浏览器中的 url,但组件没有改变,什么也没发生。
  • 也许是另一个重要的选择。我在另一个 React 应用程序中有 react-admin,有自己的路由器。但一切都很完美,我只有这个问题。
  • 哦,那可就大不一样了。您应该在 onClick 道具中调用自己的路由器,恕我直言。
猜你喜欢
  • 1970-01-01
  • 2019-02-28
  • 1970-01-01
  • 1970-01-01
  • 2019-01-26
  • 1970-01-01
  • 1970-01-01
  • 2014-06-20
  • 2022-06-20
相关资源
最近更新 更多