大多數(shù)文章說惠遏,SharedWorker的通信需要使用set到work.js全局變量骏啰,再通過接收端頁面主動或輪訓使用get獲取信息节吮,但其實可以將onconnect中的e.ports[0]保存在全局變量中,直接和他頁面進行消息通信判耕。
var allPorts=[]
onconnect = function (e) {
let port = e.ports[0]
allPorts[allPorts.length]=port
port.onmessage = function (e) {
for(var i=0;i<allPorts.length;i++){
allPorts[i].postMessage(params)
}
}
}
其實早有大神提出這種方法透绩,寫得比我漂亮多了:
https://blog.csdn.net/u012397879/article/details/89321223
啊啊啊safari不支持真是蛋疼壁熄,你tmd就是下一個IE嗎