Melvin
Melvin

Reputation: 897

How to persist service data after reload in angular 5

I have a service to pass data between components and when called it works but when i reload the service data gets reset.So when i searched on reload the memory is reset so is there a way to persist data even after reload without using any client side storage ? One thing i am curious is that can i achieve this using rxjs but i am not sure how this would help ?I fear to use localstorage because the data will be mostly objects or array and not user id or session id.Any inputs on this would be really helpful.I have produced a sample example to help me with.You can find below

https://stackblitz.com/edit/component-data-sharing-service

Upvotes: 6

Views: 15499

Answers (3)

anemonetea
anemonetea

Reputation: 61

You might want to use sessionStorage instead of localStorage. sessionStorage will be cleared when the user closes your application's tab. On the other hand, localStorage persists across tabs and will only be cleared when the user closes the browser completely. In addition, localStorage is shared between Incognito windows in Chrome (though not with the main window). So, sessionStorage would be more secure than localStorage.

Upvotes: 1

Sajeetharan
Sajeetharan

Reputation: 222582

You should be using localstorage/sessionstorage or shared service among components.

You can store the information(object/arrays) using JSON.stringify. If you are using shared service which becomes singleton so you can access across any components.

Upvotes: 6

Roberto Zvjerković
Roberto Zvjerković

Reputation: 10137

What do you mean "without using client side storage"? You have to use client side storage to persist data in client side...

Make a singleton shared service in which you can save your data.

Like so:

https://octoperf.com/blog/2016/03/29/singleton-service-using-angular2/

Upvotes: 0

Related Questions