没有在pusher的console.log中显示数据

时间:2019-03-25 05:43:34

标签: jquery laravel pusher laravel-5.8

尝试显示来自{strong>推送器的console.log中的数据。我正在使用 laravel 5.8

app.js文件具有以下代码:

let userId = document.head.querySelector('meta[name="user-id"]').content;
Echo.private('App.User.' + userId)
    .notification((notification) => {
        console.log(notification.type);
    });

错误在下面:

  

未捕获的TypeError:无法读取null的属性“ content”

我还在刀片中添加了CFRS令牌和ID为的Auth:User,如下所示:

<meta name="csrf-token" content="{{ csrf_token() }}">
    <mete name="user-id" content="{{Auth::check() ? Auth::user()->id: ''}}"

2 个答案:

答案 0 :(得分:2)

  

我认为这里拼写错误

记录更改为 (tag name is a not a proper)

 <meta name="user-id" content="{{Auth::check() ? Auth::user()->id: ''}}" />

并无头使用

let userId = document.querySelector('meta[name="user-id"]').content;
console.log("user Id"+userId);
Echo.private('App.User.' + userId)
    .notification((notification) => {
       console.log(notification.type);
});

答案 1 :(得分:1)

尝试一下

确保使用

获得正确的ID
let userId = document.querySelector('meta[name="user-id"]').content;
Echo.private('users.' + userId)
    .notification((notification) => {
        console.log('received');
        console.log(notification);
    });

确保您具有相同的频道路线

Broadcast::channel('users.{id}', function ($user, $id) {
    return (int) $user->id === (int) $id; // it should be true (return true)
});

建议

您可以使用以下方式从推送程序中启用全局控制台日志

Pusher.log = function(message) {
    window.console.log(message)
};

那可以记录每个pusher事件。开发过程会有所帮助