鍍金池/ 問答/HTML/ SharedWorker中的onconnect有啥用?

SharedWorker中的onconnect有啥用?

問題如下:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>無標題文檔</title>
</head>

<body>

<script>
    var shareWorker = new SharedWorker( "1.js" );
    document.onclick = function( e ){
        shareWorker.port.postMessage( 1 );    
    };
    shareWorker.port.onmessage = function( e ){
        console.log( e.data );    
    };
</script>

</body>
</html>

1.js文件啥代碼也沒有,此時該頁面在兩個窗口打開,就可以實現(xiàn)同步效果,但問題是我一直沒搞懂onconnect 這個事件又啥用?
因為網(wǎng)上資料有該方法的使用說明,但是使用中發(fā)現(xiàn)對頁面沒啥影響,例如在1.js中增加如下代碼:
onconnect = function( e ){

e.ports[ 0 ].onmessage = function(){
    this.postMessage( 2 );
};

};
結(jié)果是對頁面沒啥影響,所以這個onconnect有啥用呢?

回答
編輯回答
忘了我

SharedWorker對象post了一條message之后,該worker的onconnect就會收到該消息。反之亦然。

主線程和worker線程就是通過這個方式來通信的。

2018年6月16日 17:33