Javascript Firefox localstorage值有时在新选项卡中丢失
我在Firefox(62.0.3)中遇到了一个奇怪的问题。在Javascript Firefox localstorage值有时在新选项卡中丢失,javascript,firefox,tabs,storage,Javascript,Firefox,Tabs,Storage,我在Firefox(62.0.3)中遇到了一个奇怪的问题。在localStorage中设置的值有时会在新选项卡中丢失 当由web服务器(我使用node/express)提供服务时,我可以用以下HTML重现这一点 window.onload=()=>{console.log(window.localStorage.myVal | | |'未定义')} 步骤: 打开页面,页面显示未定义的 在控制台中运行脚本localStorage.myVal='defined' 重新加载页面,页面显示定义的 在
localStorage
中设置的值有时会在新选项卡中丢失
当由web服务器(我使用node/express)提供服务时,我可以用以下HTML重现这一点
window.onload=()=>{console.log(window.localStorage.myVal | | |'未定义')}
步骤:
localStorage.myVal='defined'
undefined
或defined
。(我打开了10个新标签,结果似乎是随机的)上面的例子只是为了说明这个问题。第一次出现此问题的实际应用程序是使用localStorage的react/redux应用程序。Try
window.onload=()=>{console.log(window.localStorage.myVal | |'undefined')}
,看看它是这样工作的。从不记录。加载后写入-它会擦除页面,并且用日志替换写入的脚本不会更改behaviour@Philippe:昨天我禁用了“关闭Firefox时删除Cookie和站点数据”的设置,在该设置中,我定义了适当的异常,这样它就不会对我的测试用例产生影响。但是,禁用该设置后,localStorage开始正常工作。这是一个遗憾,因为我真的很讨厌禁用隐私选项。
<!DOCTYPE html>
<html><body><script>
window.onload = () => {console.log(window.localStorage.myVal || 'undefined')}
</script></body></html>