首页 > 解决方案 > vue-socket.io Uncaught TypeError:无法读取未定义的属性

问题描述

我正在尝试从 Vue 组件中的 Sockets 对象调用数据。

data() {
  return {
    message: []
  }
},
sockets: {
  chatMessage: data => {
    console.log(data); //-> my data from server
    console.log(this); //-> undefined 
    console.log(this.message); //-> Uncaught TypeError
  }
}

我成功地从服务器发出和接收消息事件,因为我正在获取数据。但我不知道为什么我无法从数据中获取消息道具。

这是图书馆的文档。 https://github.com/MetinSeylan/Vue-Socket.io

标签: javascriptvue.jssocket.io

解决方案


我发现的答案是我使用的是胖箭头函数,所以我没有绑定this

我改变的只是:

sockets: {
  chatMessage: function(data){
    //-> returns what I needed
  }
}

推荐阅读