我在public文件夹里面的js文件里用sessionStorage存储了一个参数,想在vue页面里监听这个参数变化,请问怎么监听?
mounted() {
window.addEventListener("storage", function (e) {
if (e.storageArea === sessionStorage) {
alert("change");
}
});
}
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
无法监听。
如果用
setInterval
轮询的话有点儿二,并且性能有极大问题。但你可以封装一层,不要直接
sessionStorage.setItem
,而是对外提供一个方法来执行写入,并向外广播。P.S. 当然你也可以拷贝一份旧的
sessionStorage.setItem
,然后覆写它,但实际项目中并不推荐这么做,不利于维护。