location.href 和 window.open 的区别是什么?-灵析社区

颜如玉你信不信

事情是这样的: 某个 webscoket, 数据通过 window.addEventListener 做监听和发送, 由于某些原因增加了导航页, 并且不再同一个顶级的 nav 下面, 不过两个页面都有 webscoket 的启动, 自己测试的时候都能收到数据!好像没有问题 然后问题来了: 导航页把 window.open 切换到了 location.href , 写在 window 里面的 webscoket 的防重连状态没有重置, 你没看错,location.href 渲染的 hash 页面的 没有清掉缓存? 所以 webscoket 防止重连触发了, 鬼吊的来了,window.addEventListener 被清掉了, 数据拿不到, 并且是单向的,导航页 nav => 业务页 plan 拿不到 方向反过来,业务页 plan => 导航页 nav 是能拿到数据的?? 有大佬解惑吗?

阅读量:168

点赞量:0

问AI
无心插柳柳成萌
window.open 是重新打开页面,肯定是刷新操作。location 如果改 hash 的变化,页面是不会刷新的,并且 hash 不会发送到后端。 至于逻辑,肯定是两个页面写了什么东西,得上代码了