web-dev-qa-db-fra.com

Laravel Echo - default.a.channel n'est pas une fonction

J'essaie de configurer Laravel Echo avec poussoir, pour implémenter des notifications en temps réel.

Tout d'abord, j'ai installé Laravel Echo and Pusher:

npm install --save laravel-echo pusher-js

Après cela, dans bootstrap.js j'ai commenté le code (comme le dit le guide):

import Echo from "laravel-echo"

window.Echo = new Echo({
    broadcaster: 'pusher',
    key: 'my_key',
    encrypted: true
});
Echo.channel('orders')
    .listen('TestEvent', (e) => {
        console.log('pippo');
    });

J'ai exécuté gulp et maintenant quand je visite la page, j'obtiens cette erreur:

bootstrap.js?5e63:50 Uncaught TypeError: __WEBPACK_IMPORTED_MODULE_0_laravel_echo___default.a.channel is not a function
22
Mistre83

Changer Echo.channel('orders') en window.Echo.channel('orders') devrait résoudre ce problème.

60
baikho