我要问的问题是弄清楚在某种情况下从孩子到父控制器进行通信的最佳做法。比方说,我们有一个带有名为"ListController"
的控制器的元素,在其中我们有一个通过ng-repeat
填充的指令列表。该指令链接到一个名为"ListItemController"
的不同控制器,并且具有独立的范围,因此不能直接使用父ListController
的功能。在这种情况下,初学者对角度的了解我将其缩小为2个看似最直观的选项。第一个选项是$emit
中ListItemController
的事件$on
并ListController
ListController
,但事件通常被认为是沟通的不良选择。第二种可能的选择是通过使用$parent
的{{1}}字段来访问父ListItemController
,但是,假设我们的列表项是通过{{创建的1}},我们只能使用ng-repeat
来访问我们的ListController
,而$scope.$parent.$parent
也没有真正的好代码味道。我想知道这两个或哪些选项中哪个选项被认为是最佳实践,为什么?