一般先要在項目中使用websocket對某個數據流進行監聽,最好使用全局方式來定義websocket
具體代碼如下:
<script>
export defalut {
data() {
return {
path:"ws://192.168.10.4:8085"
}
},
mounted() {
this.init()
},
methods: {
init() {
if(typeof(WebsSocket) === 'undefined') {
alert('當前瀏覽器不支持socket')
}else {
// 實例化socket
window.mysocket = new WebSocket(this.path)
// 建立連接
window.mysocket.onopen = this.open()
// 監聽錯誤信息
window.mysocket.onerror = this.error()
// 監聽消息
window.mysocket.onmessage = this.getMsg()
}
},
open() {
console.log('socket連接成功')
},
error() {
console.log('連接錯誤')
},
sendMsg(data) {
window.mysocket.send(data)
},
getMsg(msg){
console.log(msg.data)
},
close() {
console.log('socket已關閉')
}
}
}
</script>
如果想要mysocket只作用於當前頁面,就無須使用window來初始化,直接使用this即可;