首页 > 解决方案 > 如何在 vue js 中更新本地存储中的对象?

问题描述

我在登录时存储的本地存储中有这种格式的用户数据。

{id: 17, name: "Boss  original", email: "boss2@gmail.com", email_verified_at: null, fcm_token: "c_jxurpcQY6Qdeh0b9ZQIV:APA91bH4BKd-dIkN5N7jtv52ZH5…zUzd35AGdNIPmn1uUSMcU_oKgnO2eAM8xybXM7MJzanzFvmZH", …}
admin: 1
allowed_login: 1
api_token: null
created_at: "2021-04-07T09:08:32.000000Z"
customer_id: null

is_driver: 0
location_access: 0
name: "Boss  original"
notification: 1
online: 0
phone_number: "12345678912"
photo: "1617894632.jpg"
role_data: {id: 3, staff_id: 17, address: "Cuernavaca, Morelos, Mexico", latitude: "18.9242095", longitude: "-99.22156590000002", …}
role_id: 9
social_security_number: "1238"
status: 1
unread_notifications: [{…}]
updated_at: "2021-04-18T16:46:32.000000Z"
warehouse: null

在这个对象中,我需要更新属性 unread_notifications: [{…}]

我如何更新该属性?我可以像这样得到这个对象

localStorage.getItem(USER_INFO);

并且可以这样存储

localStorage.setItem(USER_INFO, userData);

标签: javascriptjsonvue.jsvuejs2local-storage

解决方案


您可以像这样存储数据。

localStorage.setItem(USER_INFO, JSON.stringify(userData));

您可以再次阅读、更新和存储。

const userData = JSON.parse(localStorage.getItem(USER_INFO));
userData.unread_notifications = ...
localStorage.setItem(USER_INFO, JSON.stringify(userData));

推荐阅读