第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么websocket“打開”事件沒有觸發(fā)?

為什么websocket“打開”事件沒有觸發(fā)?

斯蒂芬大帝 2023-10-14 19:27:12
我有一個自定義對象:function Serverfunctionality(){    this.socket = new WebSocket('ws://localhost:8080');    this.uploaded_image = null    this.sign_up = function (){        this.socket.addEventListener("open" , () => {            console.log('works')                        this.send_data();                                                    })    }}然后我像這樣調(diào)用這個函數(shù)(有效):<button id="signupbutton" onclick="new Serverfunctionality().sign_up()"   type="button">Sign up</button>但如果我想創(chuàng)建一個對象的實例并在該實例上調(diào)用它。例如:var main = new Serverfunctionality();打電話main.sign_up()不起作用。注意:它Serverfunctionality位于不同的文件中,我使用以下腳本標(biāo)記鏈接 html 和 javascript 文件:<script src="client.js" type="text/javascript" ></script>
查看完整描述

1 回答

?
當(dāng)年話下

TA貢獻1890條經(jīng)驗 獲得超9個贊

Serverfunctionality打開事件偵聽器未觸發(fā),因為在我的實例中已經(jīng)使用 this.socket = new WebSocket('ws://localhost:8080');對象藍圖內(nèi)的聲明建立了連接。它在這里起作用的原因:<button id="signupbutton" onclick="new Serverfunctionality().sign_up()"   type="button">Sign up</button>是因為我們在創(chuàng)建 實例時建立連接Serverfunctionality,因此我們能夠處理“打開”事件。


而不是嘗試在“打開”事件中運行代碼塊。檢查連接是否打開,然后運行,因為在按下按鈕之前連接將打開。


代碼:


this.sign_up = function (){

    

    if (this.socket.readyState == WebSocket.OPEN ) {

        console.log('works')

        this.socket.send("works")

        this.send_data();

        }

        

            

        

}


查看完整回答
反對 回復(fù) 2023-10-14
  • 1 回答
  • 0 關(guān)注
  • 201 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號