0

我的 web 应用程序中像往常一样有多条路线。我有几个关于将信息传递到链条中的最佳方式的问题,因为我真的找不到可靠的答案:

  1. 我如何将当前路线传递给子组件?我有一个全局组件,用于我的 webapp 的每个页面。在其中一个页面上,内容必须不同。我能做到这一点的唯一方法是知道正在提供什么页面。还是我想错了,应该只解析 componentDidMount() 上的 window.location 以获得我需要的一切?

  2. 这与上述观点有关。假设我有一个参数化路由(/test/:id),它的一个子组件需要在单击按钮时执行一些 ajax 请求,并且需要将 :id 传递给端点。我怎么能做到这一点?

也许我必须从路由级别一直向下传递东西作为属性?

我只是想弄清楚最好的选择是什么。

谢谢!

4

1 回答 1

0

您不能一直向下传递属性,或者您可以将属性放在存储中并将组件连接到存储。如果你想去商店的方式,你可以尝试 react-starter-kit 的 redux 分支。这就是我所做的。在根路径上,我会将我的参数存储起来,所有其他孩子都可以读取它们。这是 react-starter-kit 的 redux 实现:

https://github.com/kriasoft/react-starter-kit/tree/feature/redux

于 2017-08-15T14:35:04.753 回答