![](/img/trans.png)
[英]Call function from another Controller in another file AngularJS
[英]Can we call the function inside the controller from another controller of another file in AngularJS?
我试图在另一个js文件中的另一个控制器中的一个控制器中调用一个函数。
我已经尝试过$broadcast
和$emit
但是我认为它只能在同一文件内工作。
我有一个名为videoWidgetController
的控制器,该控制器具有名为clickVideoWidgetListItemFromDOM
的功能。
我需要从另一个名为videoController
控制器中调用它。
在此文件中,我在点击事件上调用函数,例如data-ng-click="clickVideoWidgetListItemFromDOM(video, $index)"
videoController
$scope.clickVideoWidgetListItem = function(video, index) {
$scope.$emit("myEvent"); *** didn't work for me ***
$rootScope.$broadcast("myEvent", {video: video,index: index }); *** didn't work for me ***
};
videoWidgetController
$scope.$on("myEvent", function (event, args) {
alert(1);
console.log(args);
$scope.clickVideoWidgetListItemFromDOM();
});
我正在尝试按此链接中所述进行操作,但无法获得解决方案。
我搜索了很多,但不幸的是仍然遇到了同样的问题。
为了进行广播发射数据传输,必须满足以下条件
该事件将从父控制器广播,而该事件将从子控制器监听。 广播方法ID,用于将数据从父级传输到子级。
如果此层次结构不起作用,则可以通过services传输数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.