gpt4 book ai didi

javascript - localStorage.removeItem 基于值

转载 作者:行者123 更新时间:2023-11-28 14:28:55 27 4
gpt4 key购买 nike

我正在尝试将帐户删除添加到我的应用程序中。我基于 API 使用具有多个值的一个 key 来存储帐户。

这是我添加帐户的方式:

addAccount(state,account){
state.accounts[account.apikey] = account;
localStorage.setItem(
"accounts",
JSON.stringify(state.accounts)
);
},

这就是我的 localStorage 的样子:

key: accounts
{
"API Key 1":{ a bunch of info },
"Api Key 2":{ a bunch of info }
}

我尝试根据 API key 删除帐户:

removeAccount(state,account){
localStorage.removeItem(account.apikey);
localStorage.removeItem(JSON.stringify(state.accounts));
localStorage.removeItem(state);
localStorage.removeItem(account);
localStorage.removeItem(state.accounts[account.apikey]);
}

这两种方法都不会真正删除该值。知道我可能会错过什么吗?

最佳答案

您只能使用 localStorage.removeItem() 删除整个 localStorage 条目。您想要做的是删除 localStorage 条目的部分。执行此操作的唯一方法是检索对象,像处理普通 JS 对象一样删除键,然后重新设置 localStorage 条目:

removeAccount(state, account){
const accounts = JSON.parse(localStorage.getItem('accounts'));
delete accounts[account.apikey];
localStorage.setItem("accounts", JSON.stringify(accounts));
}

关于javascript - localStorage.removeItem 基于值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52228743/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com