Я использую фабрику с сохраненными данными из запросов $ http. Моя проблема в том, что когда я перезагружаю страницу, все данные ушли (пустая таблица). Но как только я переключу свою текущую страницу (другой маршрут), данные снова возвращаются.Данные AngularJS исчезают после обновления и возвращаются после смены страницы
Что необходимо изменить для данных, отображаемых после перезагрузки страницы?
Это моя фабрика:
'use strict';
app.factory('dataFactory', function ($http) {
var dataFactory = {};
$http.get("data/hiragana.json").success(function(response){
dataFactory.hiragana = response;
});
$http.get("data/katakana.json").success(function(response){
dataFactory.katakana = response;
});
return {
getHiraganaTable: function(){
return dataFactory.hiragana;
},
getKatakanaTable: function(){
return dataFactory.katakana;
}
};
});
Это мой контроллер:
И это мое мнение:
<table class="table table-striped table-bordered" >
<tbody data-ng-repeat="group in hiraganaTable">
<tr>
<td data-ng-repeat="hiragana in group.Hiragana" data-toggle="tooltip" data-original-title="{{hiragana.Romaji}}" data-container="body">{{hiragana.Symbol}}</td>
</tr>
</tbody>
</table>
Я попытался это, но это не помогло. Данные по-прежнему исчезают после обновления страницы. – Lulux3
$ http.get - это вызов ajax. Таким образом, вы не можете просто сделать $ scope.hiranganaTable = dataFactory.getHiranganaTable(), потому что начальное значение dataFactory.hirangana всегда будет пустым массивом. Вы должны установить значение внутри обратного вызова –