Ich habe folgendes Typoskript Modellobjekt user
Typoskript: Wie JSON-Objekt mit privaten Variablen deserialisieren?
export class User {
constructor(
private _name: string,
private _email: string
) {}
public get name():string {
return this._name;
}
public set name(value:string) {
this._name = value;
}
get email():string {
return this._email;
}
set email(value:string) {
this._email = value;
}
}
Ich speichere das Objekt über diesen Code:
let user = new User('myName', 'myEmail');
localStorage.setItem('user', JSON.stringify(user));
Wenn ich in den lokalen Speicher sehen gibt es die folgende Zeichenfolge:
{"_name":"myName","_email":"myEmail"}
Wie bekomme ich das Benutzerobjekt wieder?
Ich denke, das hat etwas mit den Unterstrichen zu tun, mit denen das Objekt gespeichert wird. Wie kann ich das Objekt korrekt empfangen?
'JSON.parse' gibt ein js-Objekt zurück (nicht vom Typ' User'). Sie sollten die 'Benutzer'-Instanz manuell erstellen und initialisieren. [This] (http://stackoverflow.com/questions/38100853/typescript-deserializing-json-into-collection-with-multiple-types/38104840#38104840) könnte hilfreich sein. –