我正在尝试在本地设置我的对象,我在console.log那个localstorage但是我得到了未定义。
这是我的功能
searchBar(item) { //item is object here as parameter
console.log(item);
localStorage.setItem('object',JSON.stringify(item))
this.quickOrder.push(localStorage.getItem('object'));
console.log(this.quickOrder);
}
我将一个quickOrder数组声明为globaly。
在我的console.log(item)中,我能够看到我的对象。
我正在尝试将具有本地存储的对象推送到我的空数组,以便我可以使用ngFor在UI中显示。
我的console.log(this.quciOrder);显示不受欢迎。
答案 0 :(得分:0)
您使用的是来自LocalStorage
的{{1}}吗?如果没有,我认为如果你使用它会更好,因为它会使事情变得更容易(请注意,LocalStorage存储引擎使用浏览器的本地存储系统来存储键/值对,所以它的含义相同存储数据的位置)。就像你在LocalStorage docs中看到的一样,你可以像这样初始化它
Ionic
然后使用import { Component } from '@angular/core';
import { Storage, LocalStorage } from 'ionic-angular';
@Component({
template: `<ion-content></ion-content>`
});
export class MyClass{
constructor(){
this.local = new Storage(LocalStorage);
}
}
和get(key)
方法,但要记住两种方法都会返回承诺,所以你应该这样做
set(key, value)
答案 1 :(得分:0)
在推入数组之前,您需要JSON.parse localStorage数据。 localStorage.setItem('object',JSON.stringify(item));
this.quickOrder.push(JSON.parse(localStorage.getItem('object')));