2017-11-30 10 views
0

私はAngular2と角度のローカルストレージを使用しています。 私はLSからいくつかのキーを入れて、変更されたオブジェクト 私のコードでそれを書き換える:巡回オブジェクト値循環オブジェクトの値angular2ローカルストレージ

:私はミスを持っているしかし

set() { 
    this.subscribtions.push(this.selectedUser); 
    this.currentUser["subscribtions"] = this.subscribtions; 
    /* this.localStorageService.set('currentUser', this.currentUser as User);*/ 

    } 

ngOnInit() { 
this.subscribtions = this.localStorageService.get(`user${this.currentUser["first_name_field"]}`)["subscribtions"];} 

(あるCurrentUserとselectedUserがクラスのユーザーである)

class User { 
constructor(public first_name_field: string, public second_name_field: string, public email_field: string, public password_field: string, public dayBirth: number, public monthBirth: number, public yearBirth: number, public gender: string, public aboutMe: string, public subscribtions: any, public subscribers: any) { 
    } 
} 

誰が도와ますか?

答えて

0

私の最初の勧告は、拡散演算子を使用する代わりに、配列

set() { 
    this.subscribtions = [...this.subscribtions, this.selectedUser]; 
    this.currentUser["subscribtions"] = this.subscribtions; 
    /* this.localStorageService.set('currentUser', this.currentUser as User);*/ 

    } 

それは状態を変異させるために悪い習慣だとそれはあなたの問題の原点を可能にプッシュを行うことであろう。