1、報錯詳情
在vue中,使用了websocket類,在websocket的onmessage回調函數中調用methods的getHistory
函數,發現一調用就報錯Uncaught TypeError: this.getHistory is not a function at WebSocket.ws.onmess
,報錯截圖如下:
2、解決方案
百度使用this.$options.methods
來調用即可解決,嘗試調用發現仍然報錯,報錯信息為Uncaught TypeError: Cannot read property 'methods' of undefined at WebSocket
;經過多次嘗試,解決方案如下:將methods要被調用的方法通過window
變量暴露給外部js,然后在onmessage
函數中調用外部js函數即可,運行成功截圖如下: