我正在使用localstorage将一些基本数据存储在我的flutter web应用程序中。一切都很好,但我的问题是,当我重新启动浏览器时,数据不可用。
// setting the data
html.window.localStorage["user-key"] = "Hello There";
//Reading it
String val = html.window.localStorage["user-key"];
我想知道这是预期的行为,还是在颤振网络中测试的预期行为,或者我这边的错误。
根据文档,它应该停留在不同的会话中,包括关闭和重新打开浏览器。请在此处查看。
我怀疑您可能正在改写密钥因此,我们的想法是检查存储是否已经有密钥,然后按照文档中的建议进行填充。
此外,在flutter web调试模式下,如果我是对的,您将打开chrome实例的新配置文件,该配置文件无法访问其他实例存储。如果我错了,请纠正我。
您可以通过访问通常浏览器实例中的URL来测试这一点,而不是通过flutter打开的URL,然后关闭并重新打开。
SO中还有其他几篇文章讨论了本地存储的这种行为以及可能的原因。