我正在尝试对嵌套资源使用自定义路由。 Request 是数据库上表的“真实”资源,而 Participants 是“虚拟”资源,它引用 request_details 表。
我有以下内容:
<Admin dataProvider={dataProvider}> <Resource name="requests" list={RequestsList} create={NewRequest} edit={EditRequest} > <Route path=":reqID/participants" element={<ReqParticipantsList />} /> <Route path=":reqID/participant/:partID" element={<ReqParticipantsEdit />} /> </Resource> </Admin>
当我转到 /requests/11/participants 时,将为 ReqParticipantsList 组件加载以下代码,一切正常:
<ListBase resource="request_details">
但是当我转到 /requests/11/participant/205 并且 ReqParticipantsEdit 组件的代码包含
<EditBase resource="request_details">
我被重定向到 /request_details,但出现错误(显然)。
在ReqParticipantsEdit组件中,我尝试使用Edit、EditBase、ResourceContextProvider,但似乎没有任何效果。如果我用简单的段落来“记录”
<p>{`Request ID: ${reqID}, Participant ID: ${partID}`}</p>
正确返回 2 个值(reqID 和 partID)
我哪里错了?