Pan*_*kaj 11 javascript laravel vue.js laravel-5.6
我正在使用Laravel 5.6.7,Socket.IO和vue.js. 我没有使用Pusher和redis.下面是我向用户发送消息的代码,一对一与我聊天.
var url = "http://localhost:6001/apps/My_appId/events?auth_key=My_Key";
var socketId = Echo.socketId();
var request = {
"channel": "private-Send-Message-Channel.2",
"name": "MessengerEvent",
"data": {
"msg": message
},
"socket_id": socketId
};
axios.post(url, JSON.stringify(request)).then((response) => {
//Message Sent
});
Run Code Online (Sandbox Code Playgroud)
我正在尝试通知正在和我聊天的用户我还在打字.我应该使用相同的上面代码,在每个char类型上发出xhr吗?这是告知用户消息输入仍在进行中的唯一方法吗?
更新1
有没有更好的方法来发布xhr,如上所述每个按键?我的意思是如果用户键入200个字符.我会发布xhr 200次吗?
要么
我们有一个名为whisper和listenForWhisper的活动,如https://laravel.com/docs/5.6/broadcasting#client-events?我正在使用vue.js和laravel 5.6.7,没有推送器和没有redis
Far*_*hir -1
是的,你是对的,它不应该在每个字符变化时发出,而是你可以使用去抖动来等待一小段时间,然后触发该函数。
我建议使用lodash库的去抖方法。应该是这样的。
Laravel 的 Echo 听起来也不错,因为您无需typing在后端执行任何操作,因此仅从客户端发送到客户端比涉及服务器更好。
| 归档时间: |
|
| 查看次数: |
680 次 |
| 最近记录: |