使用localStorage 的storage event 解决多tab 数据共享问题
主要学习下使用localStorage 的storage event 解决多tab 数据共享问题
参考代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="clickdemo" onclick="demoapp()">demo app</div>
<div id="container">
<ul id="items">
</ul>
</div>
<script>
window.addEventListener("storage",(e)=>{
let liElement = document.createElement("li")
liElement.innerText=`${e.newValue}====${e.oldValue}=====${e.key}`
document.querySelector("#items").appendChild(liElement)
})
function demoapp(){
localStorage.setItem("name",`demoapp-${Math.random()*1000}`)
}
</script>
</body>
</html>
效果
参考下图
说明
同时安利一个gif 图录屏好工具kap,很值得使用
参考资料
https://developer.mozilla.org/en-US/docs/Web/API/Window/storage_event
https://getkap.co/