0
我通过angularjs工厂访问存储在本地存储的数据。在页面加载时,工厂从本地存储装载并访问数据并将它们存储在变量中。我可以调用该工厂并获取变量中的值。刷新没有页面的Angular JS工厂重新加载
但是,无论何时在localstorage值更改后调用工厂,工厂都会返回旧值而不是新值。有没有办法刷新工厂,以便它再次获取本地存储值而不刷新整个页面?
JavaScript代码..
headerApp.factory('userFactory', ['$rootScope', function($rootScope){
var dataFactory = {};
dataFactory.user = localStorage.getItem("valueA");
dataFactory.userName = localStorage.getItem("valueB");
dataFactory.userAccessToken = localStorage.getItem("valueC");
return dataFactory;
}]);
在调用userFactory.user,userFactory.userName功能后变为localStorage的值返回旧值,而不是新的。请帮助
只要您的本地存储值被更改,并且以后每当您尝试通过工厂/服务访问该值时,它都会采用新更新的值。如果它不是theb我不知道我完全理解你的观点。 –
是的,你可以存储你的本地存储值,只要它的变化,并将其设置为工厂,然后尝试访问 –
嗯,你可以有一个工厂更新方法,从本地存储和更新变量获取最新数据。无论何时更新本地存储,都可以调用此方法。 –