В моем угловом приложении, которое я пытаюсь сохранить/восстановить данные между страницами и имею имею следующую функцию в месте:объектов теряются
$scope.storeData = function() {
var selections = $scope.devices;
console.log(selections);
sessionStorage.setItem('selectedHandsets', JSON.stringify(selections));
var ss = sessionStorage.getItem('selectedHandsets');
console.log(ss);
}
Вопрос довольно странно. Ключевыми значениями, которые я получаю в selections
, являются «selectedManufacturer» и «selectedModel», и эти значения отображаются, как ожидается, в console.log(selections)
.
Когда зарегистрировано ss
, 'selectedManufacturer' и 'selectedModel' не отображаются в sessionStorage.selectedHandsets
. Они там, когда данные устанавливаются, потому что мы можем видеть их в выборе, но когда я регистрирую ss
, они ушли!
Формат selections
это примерно так:
[
[
{ ... },
{ ... },
selectedModel: { ... },
selectedManufacuterer: { ... }
],
[
{ ... },
{ ... },
selectedModel: { ... },
selectedManufacuterer: { ... }
]
]
Если я обернуть вокруг JSON.stringify()
console.log(selections)
затем selectedModel и selectedManufacturer исчезают. Может ли кто-нибудь объяснить мне, почему это происходит и каково соответствующее исправление?
Как исправить это? Угловой толкает именованный элемент (что мне и нужно), так как значения ng-моделей – leaksterrr
вы можете предоставить исходный результат JSON.stringify перед тем, как поместить его в localstorage? строковая форма выбора. оттуда, мы можем видеть, что произошло –
были ли ошибки? –