person
是Person
类的对象,
我需要在person
中存储localstorage
对象并使用其类型检索它。
请帮忙..
我正在使用TypeScript处理AngularJS项目。
答案 0 :(得分:4)
window.localStorage只能store字符串。您可以使用JSON序列化对象并将其检索回来。
class Person {
constructor(public name:string) {
}
}
let person = new Person('Peter');
localStorage.setItem('person', JSON.stringify(person));
let personFromStorage = JSON.parse(localStorage.getItem('person')) as Person;
console.log({
person: person,
personFromStorage: personFromStorage
});
答案 1 :(得分:1)
尽管马丁的答案适用于没有方法的类。对于具有方法的类,您可以尝试以下方法:
let personFromStorage = JSON.parse(localStorage.getItem('person')) as Person;
let person = new Person('');
Object.assign(person , personFromStorage);