工作,我有以下localStorage的不是在應用程序初始化
angular
.module('core')
.factory('jsonstorage',function($rootScope,$http,$localStorage){
return {
set: function(entidy, value) {
$rootScope.$storage = $localStorage;
$rootScope.$storage[entidy] = value;
},
get: function(entidy) {
if (typeof $rootScope.$storage != 'undefined') {
return $rootScope.$storage[entidy];
}
}
}
});
控制器代碼
angular
.module('core')
.controller('HomeController', function($scope,$http,$rootScope,$localStorage,jsonstorage) {
var url = "http://test.com/?feed=xml";
$http.get(
url,
{transformResponse:function(data) {
// convert the data to JSON and provide
// it to the success function below
var x2js = new X2JS();
var json = x2js.xml_str2json(data);
return json;
}
}).
success(function(data, status, headers, config) {
jsonstorage.set('eventlist', data.feed.events.event);
}).
error(function(data, status, headers, config) {
console.error('Error fetching feed:', data);
});
$scope.feed.items = $rootScope.storage['eventlist']
console.log(jsonstorage.get('eventlist'))
console.log($scope.storage['eventlist']);
});
問題:
在在Android設備上,存儲返回值未定義安裝應用程序。但是當我通過chrome:// inspect /#設備重新加載應用程序時,所有數據饋送都會加載回來。
我沒有在桌面chrome瀏覽器的問題。
它發生在我刪除應用程序,並在設備
reintialize任何幫助讚賞
感謝
ajax調用是異步的。所以,在你調用get方法的時候set方法會被應用。 – binariedMe
你有什麼想法如何解決它謝謝 – shrijan
只有當set方法已經成功調用時調用get方法...可能你可以調用成功get方法本身。嘗試重塑流程。 – binariedMe