用于整个网站的活动的Angularjs位置

问题描述 投票:0回答:1

我有这个活动:

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

而不是将事件放置在每个控制器上,我想知道是否有可能将此事件放置在一个地方,然后在整个Angularjs中将其用于整个站点?

javascript angularjs javascript-events angularjs-scope angular-ui
1个回答
0
投票

从理论上讲,您可以将其放在模块的.run()中。

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

根据AngularJS模块docs

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

© www.soinside.com 2019 - 2024. All rights reserved.