【发布时间】:2019-07-20 08:28:58
【问题描述】:
我尝试在 Google MAP 中列出咖啡馆和标记的位置来制作项目。
想法是单击地点以选择咖啡馆并 - 选择适当的标记,反之亦然(点击标记 - 在列表中获得焦点适当的咖啡馆)
我有嵌套组件的层次结构,例如:
< App>:
<List>
<place1>
<place2>
....
<place10>
</List>
<Map>
<marker of place1/>
<marker of place2/>
...
<marker of place10/>
</Map>
</App>
我可以做一个简单的方法,只需将选择哪个咖啡馆的信息保存在顶级父级 - App 的 State 内的变量中。
但我不想渲染整个组件树——它对浏览器有很多工作。
我可以将 focused 值保留在每个子组件 placeX 和 markerX 的状态中。所以当我点击一些 placeX 切换到 focused:true 并通过父函数发送到下一个前一个组件到 focused:false - 列表。所以 - 它只有 2 个子组件要重新渲染。
但是如何在子组件中触发更改 - 在下一个分支中:?
【问题讨论】:
标签: reactjs