2

我有一个弹出控制器:

@PopupController = ["$scope", ($scope) ->
  $scope.isActive = false

  $scope.open = ->
    $scope.isActive = true

]

和教师控制器:

@TeachersController = ["$scope", "Teacher", ($scope, Teacher) ->
  $scope.teachers = Teacher.query()

  $scope.showTeacher = ->
    # somehow call PopupController.open()

]

如何拨打PopupController.open()电话TeachersController

或者也许我做错了,Angular 有一些更好的方法来实现它?

4

1 回答 1

3

您可以使用$broadcast(向下到子作用域)或 $emit(向上到作用域层次结构)将事件从一个控制器传输到另一个控制器。

然后,您将在接收器上注册一个触发您的功能的事件。请参阅http://docs.angularjs.org/api/ng.$ro​​otScope.Scope#$on

于 2013-04-17T08:18:38.340 回答