【问题标题】:react-admin expand Unknown dataProvider function: getOnereact-admin 展开 Unknown dataProvider 功能:getOne
【发布时间】:2020-02-07 13:22:47
【问题描述】:

我正在尝试使用 react-admin 创建扩展选项。

在我的AdminPanel.js

class AdminPanel extends React.Component {
    render() {
        return (
            <div>
                <Admin dataProvider={myDataProvider}>
                    ...
                    <Resource title="Submission" name="submission" list={SubmissionList} />
                    ...
                </Admin>
            </div>
        );
    }
}

const SubmissionList = (props) => (
    <List {...props} pagination={<PostPagination />}>
        <Datagrid expand={<ContentShow/>}>
               ...
        </Datagrid>
    </List>
);
const ContentShow = props => (
    <Show
        {...props}
        title=" "
    >
        <SimpleShowLayout>
            <RichTextField source="content" />
        </SimpleShowLayout>
    </Show>
);

问题是当我尝试展开条目时,它给了我一个错误提示 Unknown dataProvider function: getOne

我该如何解决这个问题?

最好不要再使用dataProvider了

【问题讨论】:

    标签: reactjs react-admin


    【解决方案1】:

    简单我console.log props,发现错误。

    这是我的解决方案:

    const ContentShow = props => (
        <SimpleShowLayout>
            <RichTextField source={props.record.content}/>
        </SimpleShowLayout>
    );
    

    【讨论】:

      【解决方案2】:

      直接使用SimpleShowLayout而不使用Show

      const ContentShow = props => (
          <SimpleShowLayout>
              <RichTextField source="content" />
          </SimpleShowLayout>
      );
      

      错误原因:

      ContentShow 是否作为show 属性传递给Resource 组件?如果没有,ContentShow 组件没有 actions 属性。所以找不到函数getOne。 (参考:https://github.com/marmelab/react-admin/blob/53aac9b84760cf56fa3d5bf5a05cea48245e3c92/packages/ra-core/src/controller/useShowController.ts#L57

      展开道具的正确用法:

      您应该传递一个依赖于记录道具的演示组件(在这种情况下为content 对象)。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-21
      • 1970-01-01
      • 1970-01-01
      • 2021-03-18
      • 2019-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多