2017-02-07 5 views
0

У меня есть угловое2app. Я сохранил данные в localstorage. Каждый раз, когда действие, получающее chage, данные локального хранилища будут очищены. Как сохранить данные локального хранилища в ngrxstore. У меня есть следующие:Локальное хранение и ngrxstore

component.ts

onClickRoom(room: string): void { 
this.date = new Date(); 
this.evntList = new events('', '', ''); 
this.evntList.timestamp = this.date; 
this.evntList.name = room; 
this.evntList.type = this.type; 
console.log("eventList:", this.evntList); 
this.eventArray.push(this.evntList); 
this.tokenmanager.store(this.eventArray); 
console.log('Room clicked: ', this.eventArray); ---> This event array successfully updating. 
} 

globalstorage.ts

@Injectable() 
export class TokenManager { 

public tokenKey: string = 'app_token'; 

constructor() { } 

store(content) { 

    localStorage.setItem(this.tokenKey, JSON.stringify(content)); 

} 

retrieve() { 
    let storedToken: any = localStorage.getItem(this.tokenKey); 


    if (!storedToken) throw 'no token found'; 
    return storedToken; 
} 
} 

Моя точка зрения:

  • ABC
  • PQR -----> Это список.
  • QWE

В то время как я щелкая ABC 3 вещи, которые откладываются в локальном хранилище, как:

[{name: "abc", timestamp:time, type: "typename"}]. 

затем после того, как я CLIK массив будет получать обновления в

[{name: "abc", timestamp:time, type: "typename"}, {name: "pqr", timestamp:time, type: "typename"}]. 

Но после обновления страницы и щелчка на том же элементе, которые ранее сохраненные данные будут потеряны, а массив обновится с новым значением. Но на самом деле мне нужен новый добавленный массив. Это означает, что ранее сохраненные данные и вновь сохраненные данные. Как я могу это реализовать?

Как хранить данные локального хранилища в хранилище ngrx для получения всех сообщений. Я новичок в магазине angular2 и ngrx. Любая помощь высоко ценится.

ответ

0

Я знаю, что это уже довольно старый вопрос, но просто наткнулся на это и я работаю над чем-то похожим.

Я использую ngrx-store-localstorage, этот модуль автоматически синхронизирует ngrx-store с localstorage, если вы используете вариант регидратации.

Надеюсь, что это поможет любому, кто наткнулся на эту проблему.