Как использовать laravel echo с React js?

Я создаю чат-приложение с pusher в laravel и использую response js для front-end. теперь, когда я использую Echo.channel в react js, он показывает, что канал не определен. как решить эту проблему или какой-либо альтернативный способ сделать это? ?

это в моем App.js:

импортировать Echo из laravel-echo

window.Pusher = require ('pusher-js');

window.Echo = новое эхо ({вещатель: 'толкатель', ключ: process.env.MIX_PUSHER_APP_KEY, кластер: process.env.MIX_PUSHER_APP_CLUSTER, forceTLS: true});

и это в моей реакции js chatUi:

listen = () => {

    window.Echo.channel('my_channel');
    channel.listen('FormSubmitted', function (data) {
        alert(JSON.stringify(data));
    });

}

person MIZAN RIFAT    schedule 29.09.2019    source источник


Ответы (1)


Я столкнулся с той же проблемой ... В моем случае у меня есть отдельный файл js для моего приложения реакции (resources/js/react.js), в котором мне не нужен bootstrap.js. Итак, я просто скопировал эхо импорта в свой файл response.js. Весь мой resources/js/react.js файл находится ниже.

import Echo from 'laravel-echo'

window.Pusher = require('pusher-js');

window.Echo = new Echo({
    broadcaster: 'pusher',
    key: process.env.MIX_PUSHER_APP_KEY,
    cluster: process.env.MIX_PUSHER_APP_CLUSTER,
    encrypted: true
});

import Component from './react/index';

Не забудьте перекомпилировать, запустив npm run dev

person Austin Jenkins    schedule 17.12.2019