0

是否可以为 List 组件定义自定义传奇?我的意思是,当列表被挂载时,它RA/CRUD_GET_LIST会自动调度动作(由于从父组件传递的道具),从服务器获取数据。我想RA/CRUD_GET_LIST用不同的行为定义我自己的,这可能吗?

列表组件:

<List
    {...this.sanitizeProps(this.props)}
    filter={{ userId: userId }}
    title="History"
    perPage={10}
>
    <DataGridComponent />
</List>

随着sanitizeProps我过滤我需要的道具并传递其他道具。

我需要等待的资源是:<Resource name="user" />

userId从我的自定义减速器中得到:

const mapStateToProps = state => ({
    userId: state.userReducer.user.id
});
4

1 回答 1

1

要回答你的问题,不,这是不可能的。但是,您可以通过将 List 包装在连接的组件中来实现所需的结果,并且只有List在您拥有 user_id 时才会呈现。否则,只需返回 null 或指示您正在加载内容的内容。

const MyConnectedList = ({ userId, ...props }) =>
    userId
    ? (
       <List
           {...this.props}
           filter={{ userId }}
           title="History"
           perPage={10}
       >
           <DataGridComponent />
       </List>
    )
    : null
于 2018-06-27T05:12:00.800 回答