我有一个
javascript对象,我需要全局到我的angularjs应用程序.当应用程序即将卸载时(由于页面刷新或其他一些情况),我想将该对象持久保存到浏览器存储.我相信将对象添加到$rootScope将满足使对象全局化的第一个要求,但是在onbeforeunload事件期间将对象写入存储将需要访问$rootScope变量.是否有可能在angularjs中检测到页面卸载事件?
这应该这样做,但我也建议避免使用$rootScope作为全局状态,并且您也可以将localStorage包装在服务中,以便可以注入和模拟它进行测试.
原文链接:https://www.f2er.com/angularjs/141336.html.run([ '$window','$rootScope',function($window,$rootScope) { $window.addEventListener('beforeunload',function() { localStorage.myValue = $rootScope.myValue; }); } ]);