gpt4 book ai didi

angular - 使用IONIC Storage Service,如何获取和返回存储的JSON数据?

转载 作者:太空狗 更新时间:2023-10-29 18:14:48 24 4
gpt4 key购买 nike

我是 Ionic 新手。

我能够使用 IONIC 存储服务存储一个 JSON 对象(数据);但是,当我尝试检索 JSON 数据时,我得到了 undefined。

我很感激任何帮助 - 下面是我的代码:

提供者:存储服务.ts:我可以存储和输出数据,但我不能返回数据:

import {Injectable} from '@angular/core';
import { Storage } from '@ionic/storage';

@Injectable()
export class StorageService {

constructor(public storage: Storage){}

public storeData (data) {
this.storage.set('data', data);
}

public getStoredData() {
this.storage.get('data').then((val) => {
console.dir(val); //****** this outputs the object.
return val; //***** this returns undefined
});
}
}

我的页面.ts:

import {StorageService} from "../../providers/storage-service";

constructor(public storageService: StorageService) {

//***** this outputs undefined, what I'm doing wrong?
console.dir(this.storageService.getStoredData());
}

非常感谢对此的任何帮助。

谢谢

最佳答案

由于 Ionic 存储是基于 promise 的,因此您需要在服务中返回该 promise :

public getStoredData() {
return this.storage.get('data').then((val) => { // <-- Here!
console.dir(val);
return val;
});
}

还可以使用 then 获取页面中的值

import { StorageService } from "../../providers/storage-service";

constructor(public storageService: StorageService) {

this.storageService.getStoredData().then(data => {
console.dir(data); // <-- Like this!
});

}

Here 您可以找到更多有关如何使用 promise 的信息。

关于angular - 使用IONIC Storage Service,如何获取和返回存储的JSON数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52566640/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com