[英]Angular js watch session Storage
我有一些来自不同控制器的数据,这些数据存储在sessionStorga中,使用https://github.com/fredricrylander/angular-webstorage 。 数据存储正常,并且在当前会话中可用。 我面临的问题是制作一个控制器来监视webstorage.session中的变化我是这样做的:
app.controller(
'updateDataController',
['$scope','$http','$sce','$location','$routeParams', '$rootScope', '$document', 'webStorage', '$interval', 'md5',
function($scope,$http,$sce,$location,$routeParams, $rootScope, $document, webStorage, $interval, md5) {
$scope.mySessionStorage = webStorage.session;
$scope.$watch('mySessionStorage', function (newVal, oldVal) {
console.log("The web storage has changed");
}, true);
}
]);
我只得到一次console.log输出。 即使我更改了webStorage.session的内容,我也没有得到任何日志。 可能是什么问题呢?
webStorage.session
仅在控制器初始化时将值设置为$scope.mySessionStorage
一次。 因此手表上方的代码只会触发一次。
尝试观察webStorage.session
值而不是控制器中的值:
$scope.$watch(function () {
return webStorage.session;
}, function (newVal, oldVal) {
console.log("The web storage has changed");
}, true);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.