考虑更改后路由的下拉菜单。
逻辑上我们有一个布局:
<Things>
{/* Dropdown menu that, when item is selected,
routes to appropriate Thing-specific path */}
<ThingsDropdown />
{/* Component that represents the currently selected thing. */}
<Thing />
</Things>
这个想法是这里的顶级是/ things /,并从下拉路线中选择一个项目到/ things /:thingId /.
当直接加载/ things /:thingId /时,下拉列表的值应默认为:thingId。但是父组件(Things)无法访问特定于Thing的参数。
这不是React Router独有的问题。 Ember的路由系统具有相同的限制。
处理此用例的推荐模式是什么?必须指定当前的thingId两次(一次作为参数,一次处于状态以便可以在父组件中正确设置)似乎很浪费。
感谢。
亚当
答案 0 :(得分:0)
经过一些研究后,我确定这里的解决方案是使用始终呈现的Route,并通过查看传递给组件的match参数(如果已设置)来确定所选的thingId。