将在全站范围内使用的事件的angularjs展示位置

时间:2015-03-19 17:14:31

标签: javascript angularjs javascript-events angularjs-scope angular-ui

我有这个事件:

  $(window).bind("beforeunload", function() {
            //do something
        });

我不想把这个事件放在每个控制器上,而是想知道是否有可能将这个事件放在一个地方然后在angularjs中使用它?

提前致谢,Laziale

1 个答案:

答案 0 :(得分:0)

理论上你可以把它放在你的模块中.run()

angular.module('yourModule')
    .run(function() {
        $(window).bind("beforeunload", function() {
            //do something
        });
    });

根据AngularJS模块docs

  

运行块是Angular中与main方法最接近的东西。跑步   block是需要运行以启动应用程序的代码。它   在配置完所有服务后执行   注射器已创建。运行块通常包含代码   很难进行单元测试,因此应该单独声明   模块,以便在单元测试中可以忽略它们。