React Router - pass path id to onEnter function
我以前使用过React Routers URL参数来过滤内容数组并返回想要的特定内容(按ID过滤)。现在为我提供了一个单独的API,这意味着我不再需要返回所有内容然后进行过滤,而是可以进行一次调用并返回该特定项目的数据。
要进行页面加载调用,我需要访问Route onEnter函数上的ID。是否可以在此onEnter函数上使用URL参数,如果不能,那么从容器组件中触发分派函数将是显而易见的解决方案吗?
1 2 3 4 5 | <Route path={'locker/my-content/:id'} component={ManageContentPage} onEnter={() => { store.dispatch(loadMyContent(// NEED ID HERE)); }} /> |
您可以通过onEnter函数的参数
如果您正在使用react-router 4,则
对于反应路由器<4
传递给
因此要访问此值,您需要类似以下内容:
1 2 3 4 5 | <Route path={'locker/my-content/:id'} component={ManageContentPage} onEnter={(nextState) => { store.dispatch(loadMyContent(nextState.params.id)); }} /> |