Как сохранить каждое значение json в localStorage в ионном режиме - PullRequest
0 голосов
/ 25 апреля 2020

У меня есть следующее json из моего API для отдыха:

{"data":[{
"loginStatus":"Valid",
"CustomerName":"Fagbemi Ayodele","Mobile":null,
"Email":"fagbemiayodele48@gmail.com",
"CustomerID":"3"
}]}

В моем login.ts Я пытаюсь сохранить каждое значение из json в localStorage с помощью выполняя следующее:

this.authService.login(this.loginData).then((result) => {

        this.data = result;


          localStorage.setItem('loginStatus', this.data.loginStatus);
          localStorage.setItem('CustomerName', this.data.CustomerName);
          this.navCtrl.setRoot(MyApp);
          this.loading.dismiss();

}

Когда я пытался распечатать значение в консоли, т.е. console.log(this.data.loginStatus);, возвращается undefined.

Как я могу получить каждое значение?

Ответы [ 2 ]

0 голосов
/ 26 апреля 2020

это метод, который я использую для своего хранилища. Надеюсь, он вам пригодится.

установленное значение

public set(keyValue,value){
    return this.storage.set(keyValue,value);
  }

получить значение

 public async get(keyValue){
    return await this.storage.get(keyValue);
  }
0 голосов
/ 25 апреля 2020

Свойство data возвращаемого JSON является не объектом, а массивом. Таким образом, ваш код должен быть таким:

this.authService.login(this.loginData).then((result) => {

    this.data = result[0];

    localStorage.setItem('loginStatus', this.data.loginStatus);
    localStorage.setItem('CustomerName', this.data.CustomerName);
    this.navCtrl.setRoot(MyApp);
    this.loading.dismiss();
}

Обратите внимание, как я получил индекс 0 массива результатов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...