如何在 react-admin 中添加自定义操作

问题描述

我使用 react-admin,需要向我的列表视图添加一个自定义按钮,该按钮将导航到特定的 API。

我的问题:

  1. 如何创建按钮?我应该在我的清单上写些什么?
  2. 如何将其导航到 API?

谢谢

解决方法

我的解决方法:

  1. 创建自定义按钮:

     import Button from '@material-ui/core/Button';
     import { TopToolbar } from 'react-admin';
    
     const PostShowActions = ({ basePath,data,resource }) => (
     <TopToolbar>
         {/* Add your custom actions */}
         <Button color="primary" onClick={customAction}>Custom Action</Button>
     </TopToolbar>
     );
    
     export const PostList = (props) => (
     <List actions={<PostShowActions />} {...props}>
         ...
     </List
     );
    
  2. 导航到 API: 我实现了这样的 customAction:

    const genarte = () => {
        const httpClient = fetchUtils.fetchJson;
        const apiUrl = "your API";
        httpClient(`${apiUrl}`,{method: "POST"}).then(({ json }) => ({
                    data: json,})
    
        ); };
    

我知道它不会将页面导航到外部链接,只会发出 http 请求, 但现在我需要它就可以了。

如果您有任何评论或想法如何将页面导航到外部链接,我会很高兴