Storing array content in session storage

user2761431 picture user2761431 · Jul 1, 2018 · Viewed 8.5k times · Source

I have data being displayed in a table. I delete a row, I need to hide it until that deletion is also exposed to the backend (It is exposed only after a minute). There is also auto-refresh that happens every 25 seconds, which brings the stale data (only after a minute, updated data is available to the backend).

I decided to use sessionStorage to store the deleted objects and then whenever the stale data comes I compare and not show in the table.

But sessionStorage doesn't support array. So when user deletes one object, goes to some other page, comes back and deletes another object (sessionStorage variable is overwritten) and then refreshes, only the last object deleted is hidden, all other deleted objects are shown

I am not sure how to store the deleted objects in session storage.

Answer

m.belica picture m.belica · Jul 1, 2018

If you store array of items its pretty easy. You can store an array using json stringify:

sessionStorage.setItem('deletedItems', JSON.stringify(array))

Then retrieve it like this:

JSON.parse(sessionStorage.getItem('deletedItems'))

Before storing next deleted item you can then retrieve previous items in storage, push to existing array the new item and store it back