我正在创建一个AlertFactory,因为ui.bootstrap.dialog在我的应用程序中不起作用。
所以我输入以下代码:http://jsfiddle.net/Premier/BHqKB/17/
enter code here
如果单击“打开对话框”按钮,它会很有效:在屏幕上会出现一个包含我的消息的对话框。
我还在keydown上注册了一个监听器:listener触发一个广播事件,在该事件上注册了一个与范围相关的函数。此函数调用openDialog来显示对话框。通过这种方式,angular不会插入参数,并且会在{{title}}占位符中显示警报。
我的代码有什么问题?
谢谢。
答案 0 :(得分:1)
您需要$apply
来调用摘要周期。
ng.element(document).on('keydown', function(e){
//alert('keydown');
//openDialog();
$rootScope.$broadcast('openDialog');
$rootScope.$apply();
});