如何通过 Javascript 上的数组 运行?
How to run through array on Javascript?
我无法从 Ionic 5 上的电容器存储中检索所有值,我一直在检索 ZoneAwarePromise 或 Array Iterator ,如何处理?
谢谢
//MAIN.ts
ngOnInit() {
let vaya = this.storage.keys()
.then(result => {
return result
});
vaya.then(data => {
for (let item of data) {
console.log(this.storage.getItem(item))
}
})
}
//服务STORAGE.ts
async keys() {
const { keys } = await Storage.keys();
console.log('Got keys: ', keys);
return keys
}
电容器存储是异步的,因此要检索它拥有的所有值,您需要:
- 确保电容器已初始化
- 获取密钥
- 写一个可以做异步处理的循环
这应该有效(这将按顺序检索数据):
ngOnInit() {
let values = [];
this.storage.keys().then(async (keys) => {
for (let key of keys) {
let value = await this.storage.get(key)
values.push(value)
};
});
}
您也可以并行做出承诺运行:
ngOnInit() {
let values = [];
this.storage.keys().then(async (keys) => {
const promises = keys.map(key => this.storage.get(key))
values = await Promise.all(promises);
});
}
我无法从 Ionic 5 上的电容器存储中检索所有值,我一直在检索 ZoneAwarePromise 或 Array Iterator ,如何处理?
谢谢
//MAIN.ts
ngOnInit() {
let vaya = this.storage.keys()
.then(result => {
return result
});
vaya.then(data => {
for (let item of data) {
console.log(this.storage.getItem(item))
}
})
}
//服务STORAGE.ts
async keys() {
const { keys } = await Storage.keys();
console.log('Got keys: ', keys);
return keys
}
电容器存储是异步的,因此要检索它拥有的所有值,您需要:
- 确保电容器已初始化
- 获取密钥
- 写一个可以做异步处理的循环
这应该有效(这将按顺序检索数据):
ngOnInit() {
let values = [];
this.storage.keys().then(async (keys) => {
for (let key of keys) {
let value = await this.storage.get(key)
values.push(value)
};
});
}
您也可以并行做出承诺运行:
ngOnInit() {
let values = [];
this.storage.keys().then(async (keys) => {
const promises = keys.map(key => this.storage.get(key))
values = await Promise.all(promises);
});
}