如何仅在用户端重置localStorage一次?

时间:2018-06-09 13:22:03

标签: javascript local-storage

我有一个带有redux状态的react应用程序,它存储在localStorage

问题是数据结构发生了变化,一些老用户收到了错误。需要重置。

如果我在代码中添加localStorage.clear(),它将每次运行,根本不会使用存储。

是否可以通过部署传递的特定标志类型重置localStorage一次?像css文件那样有版本,即.css?412uisqfh9-wq不同于部署

1 个答案:

答案 0 :(得分:3)

您只能运行一次localStorage.clear()

您需要做的事情如下:

if (localStorage.getItem("clearStorage") === "<old version number>") {
  localStorage.clear();
  localStorage.setItem("clearStorage", "<new version number>");
}

在第一次运行时,只会执行if condition个代码,之后每次此条件都为false且永远不会执行。