我在组件通信方面遇到一些麻烦。可以说我有3个嵌套组件。
有孩子{{component-a}}
的父母{{component-b}}
->有孩子{{component-c}}
的父母。
如果未呈现component-c
,如何从component-a
直接访问component-c
。
这有可能吗?
谢谢
答案 0 :(得分:3)
Ember使用数据减少动作模式。这意味着,如果您想将数据从组件发送到其子组件,则可以通过参数传递该组件,但是如果您想要相反的方向,则应该使用该数据发送一个动作。当您拥有3个组件时,您会在中间跳过一个组件,而这个组件将继续传递信息。
您可以找到更多信息here
答案 1 :(得分:1)
通常,您将希望使用服务来跨不同组件树进行通信或“从子组件发送数据”
服务非常容易测试。
使用数据向下动作也可以,但是除了两层之外,还被称为道具钻探。由于过度的互连性,支撑钻使零件难以维护
希望这会有所帮助!