Я пытаюсь установить значение, полученное из .get-функции, в переменную, объявленную снаружи, но неспособную сделать это.ionic 2 локальное хранилище не удалось установить полученное значение переменной
var dt;
//retrieve
this.local.get('didTutorial').then((value) => {
alert(value);
dt = value;
})
console.log("Local Storage value: "+dt);
Я смог получить «истинный» для предупреждения, но получение «не определено» для console.log, что печать вне функции.
Один из способов является то, что я могу поместить все мои остальные коды в «.Затем функции», но это было бы очень грязно.
Update (Solution):
В соответствии с ионным API (http://ionicframework.com/docs/v2/api/platform/storage/LocalStorage/), они используют .get для получения значений.
С использованием обещаний это собственные ограничения, используя следующие:
constructor(navController) {
this.navController = navController;
this.local = new Storage(LocalStorage);
}
и функция GetItem,
localStorage.getItem('didTutorial')
Вы сможете получить его без того, чтобы положить все в функции обратного вызова метод.
Эй, это оценивается как: 'Ошибка TS2339: свойство 'getItem' не существует в типе 'Storage'.' –
@ThomasModeneis Возможно, я не уверен, что это для .beta5 и ниже. – Gene