6

我想在 Redux 中间件中提取 URL 参数,以便分派一个操作并在有效负载中使用这些值。

4

2 回答 2

5

为了实现你的目标,你可以使用redux-router

这个库允许你将你的路由器状态保存在你的 Redux 存储中。因此,获取当前路径名、查询和参数就像选择应用程序状态的任何其他部分一样简单。

之后,您可以从中间件获取参数

export const someMiddleware = store => next => action=> {
    /// get params
    let params = store.getState().router.params;

    ///then do what you want...........
    next(action)
};

更多信息

于 2016-07-01T18:15:41.677 回答
0

您无需访问params中间件内部。一个常见的模式是params通过props在组件中访问您想要分派操作的位置。

像这样的东西:

this.props.dispatch(yourAction(this.props.params));

请注意,您需要dispatch使用react-redux Connect 方法使您的组件可用。例如:

export default connect()(YourComponent);
于 2016-07-01T09:46:10.697 回答