html - 循环本地存储并显示离子应用程序中所有键和值的完整列表
问题描述
我在 localStorage 中保存了多个键和值,如下所示:
Day1 1
Day2 2
Day3 3
我想检索所有键和值并将它们显示在列表视图中。
我的 home.html 如下所示:
<ion-item-divider >
<ion-label >{{key}} </ion-label>
<ion-label color="secondary">{{value}}</ion-label>
</ion-item-divider>
我的 home.ts 如下所示:
for (var i = 0, len = localStorage.length; i < len; i++) {
this.key = localStorage.key(i);
console.log(this.key);
this.value = localStorage.getItem(localStorage.key(i));
console.log(this.value);
}
我只能显示最后一条记录。请建议我在哪里做错了。
解决方案
您可以在 *ngFor 中使用键值管道。
<ion-item-divider *ngFor="let item of mainObject|keyvalue">
<ion-label>{{item.key}} </ion-label>
<ion-label color="secondary">{{item.value}}</ion-label>
</ion-item-divider>
在您的 TS 文件中:
mainObject = {...localStorage};
(or)
mainObject = {};
for (const key in localStorage) {
if (Object.prototype.hasOwnProperty.call(localStorage, key)) {
this.mainObject[key] = localStorage[key];
}
}
角度文档:https ://angular.io/api/common/KeyValuePipe#description
推荐阅读
- php - 使用 mySQL 准备语句选择多列
- database - GraphQL Prisma 数据库,允许两个表与一个表有关系
- pine-script - 从 tradingview 中删除公共脚本
- http - 如果我使用块编码,我应该逐块发送http数据吗?
- flutter - How can I fix images being slow to load?
- javascript - Redirect user if url matches certain conditions
- r - 在绘制多条线时调整组美学?
- python - 比较神经网络在两个特征子集上的结果
- java - Java 函数签名接受单个枚举值
- ios - Swift:我如何将单元格放在一起并根据文本量调整 TableView 的单元格宽度