我最近使用Pusher和Laravel开发了一个通知系统。不幸的是,它不能以这种方式工作:
import Echo from 'laravel-echo'
window.Pusher = require('pusher-js');
Pusher.logToConsole = true;
window.Echo = new Echo({
broadcaster: 'pusher',
key: 'WORKING KEY ..',
cluster : "mt1",
encrypted: true
});和
window.Echo.channel('post')
.listen('ArticleEvent', function (e) {
console.log(e);
});当消息被发送到客户端控制台时,但是Listen根本没有工作.也没有任何记录。
不管怎样,我用了这个方法,它起了作用:
window.Pusher = require('pusher-js');
var pusher = new Pusher('WORKING KEY ..', {
encrypted: true,
cluster: 'mt1',
});
var channel = pusher.subscribe('post');
channel.bind('ArticleEvent', function(e) {
alert(JSON.stringify(e['message']));
});两种方式之间的差异是什么,哪些是首选?
发布于 2019-10-02 16:17:25
您需要在侦听方法中包含命名空间信息。
请尝试使用(注意.字符):
window.Echo.channel('post')
.listen('.ArticleEvent', function (e) {
console.log(e);
});https://stackoverflow.com/questions/58202319
复制相似问题