我尝试注册窗口关闭,最小化,最大化等事件,并在内部控制器内部使用它,这样我就可以在窗口关闭之前清理一些东西。我只是一个关于随机ID和广播的愚蠢想法。还有什么更好的吗?
<div class="window">
<div class="header">
<a ng-click="minimize()">Minimize</a>
<a ng-click="maximize()">Maximize</a>
<a ng-click="close()">Close</a>
<div class="content" ng-include="Controllers/someWindow.html"></div>
</div>
<div ng-controller="SomeWindowCtrl">
</div>
答案 0 :(得分:4)
您可以将div.window
元素包装到指令(例如,my-window
)中并从中公开控制器。然后,其中的指令可以要求my-window
作为父级,将其控制器作为链接函数的第四个参数。
可以找到一个简明的例子here。
答案 1 :(得分:2)
您可以使用
$rootScope.$broadcast('EVENT_ID', data);
和
$rootScope.$on('EVENT_ID', function($event, data) {
//event handler
});