我从Adonis.js框架开始,我不知道websocket服务是如何工作的。我按照关于此的文档,尝试建立一个房间。
我让你看看:
// app/Ws/Controllers/ChatController.js
'use strict'
class ChatController {
constructor (socket, request) {
this.socket = socket
this.request = request
}
* joinRoom (room) {
console.log(this.socket) <---- get undefined
}
}
module.exports = ChatController
// resources/views/welcome.njk
{% extends 'master' %}
{% block content %}
<script src="https://unpkg.com/adonis-websocket-
client@1.0.2/dist/ws.js" charset="utf-8"></script>
<script type="text/javascript">
const io = ws('', {})
const client = io.channel('chat').connect(console.log)
client.joinRoom('index', {}, console.log)
</script>
{% endblock %}
当我加载欢迎页面时,我在控制台中得到“未定义”。我不明白我的错误。
感谢的。
贝鲁
答案 0 :(得分:0)
* joinRoom (room, payload, socket) {
console.log(socket)
}
Payload是您发送的自定义数据:
client.joinRoom('index', {data}, console.log)
希望它有所帮助。 如果您需要更多说明,请与我们联系。