我有这个活动:
$(window).bind("beforeunload", function() {
//do something
});
而不是将事件放置在每个控制器上,我想知道是否有可能将此事件放置在一个地方,然后在整个Angularjs中将其用于整个站点?
从理论上讲,您可以将其放在模块的.run()
中。
angular.module('yourModule')
.run(function() {
$(window).bind("beforeunload", function() {
//do something
});
});
根据AngularJS模块docs:
运行块是Angular中最接近main方法的东西。跑步块是启动应用程序所需的代码。它在配置所有服务并执行以下操作后执行进样器已创建。运行块通常包含以下代码:难以进行单元测试,因此应单独声明模块,以便可以在单元测试中忽略它们。