Angular 6: изменить элемент массива в localStorage - PullRequest
0 голосов
/ 26 октября 2018

Я хочу изменить свойство объекта в локальном хранилище.Объект будет выглядеть следующим образом:

appID: {"userid":0,"username":null,"password":null,"saltPassword":null,"kraPassword":null,"kraPasskey":null,"panNumber":"BTRGH8774L","dob":"20/05/1980","address1":"24, New Palasia","address2":"Near vvds","address3":"dvdd","city":"","state":"","pincode":452001,"firstname":"Ramesh","middlename":"","lastname":"Patidar","fathername":"dvdvd","mothername":"vdsddvdsvdsvdsd","maritalStatus":null,"gender":1,"aadharNumber":"741204513909","mobile":"9479897412","email":"dvdsv@bha.com","token":null,"customerId":1,"strDob":null,"ekycApplicationId":1,"stage":"UPLOAD DOCUMENT","dd":null,"mm":null,"yyyy":null,"updatedAt":"26/10/2018","filter":null,"country":null,"stageId":null,"companyName":null,"openLayout":true}

Like Просто хотите изменить значение «mothername» из массива и добавить новое значение.

Ответы [ 2 ]

0 голосов
/ 26 октября 2018

Однострочный подход с использованием нового оператора спреда:

localStorage.setItem('appID', 
    JSON.stringify(
    { ...JSON.parse(localStorage.getItem('appID')), 
      ...{ 'mothername': 'Mommy' }})
);
0 голосов
/ 26 октября 2018

Вы не можете редактировать значение локального хранилища после того, как оно сохранено, но вы можете вернуть его обратно, сохранить его в объекте, отредактировать желаемое свойство объекта и затем сохранить его снова в локальном хранилище.

let item =JSON.parse(localStorage.getItem(key));
item['mothername']='New value';
localStorage.setItem(key, JSON.stringify(item));

Не забудьте при его сохранении привести к строковому форматированию при сохранении, поскольку локальное хранилище сохраняет только строки и анализирует их в объекте при получении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...