Laravel Echo "Эхо не определено" - PullRequest
       22

Laravel Echo "Эхо не определено"

0 голосов
/ 25 декабря 2018

Прежде всего спасибо за чтение.Позвольте мне объяснить проблему, с которой я сталкиваюсь.Поэтому я успешно установил Pusher и Laravel Echo и попытался использовать его в моем dash.blade.php, вот как я импортировал файл app.js: <script src="{{ asset('js/app')}}"></script>.После этого я использовал это:

<script>
  Echo.channel('channelDemoEvent')
    .listen('eventTrigger', (e) => {
      alert('Its working');
    });
</script>

И при запуске я получаю эту ошибку в консоли Chrome: Uncaught ReferenceError: Echo is not defined

Я искал в Интернете эту ошибку более 2 часов,и когда я добавил window. перед Echo, я получил другую ошибку, эта ошибка такова: Uncaught TypeError: Cannot read property 'channel' of undefined Я попытался прокомментировать это на app.js, потому что я прочитал, что это может привести к этой ошибке: Vue.component('example-component', require('./components/ExampleComponent.vue'));window.Vue = require('vue');

const app = new Vue({
el: '#app',
});`

После комментирования я получаю ту же ошибку.Спасибо за чтение и хорошего дня.

1 Ответ

0 голосов
/ 26 декабря 2018

Вот некоторые вещи, которые вы можете проверить / сделать, которые могут решить вашу проблему:

  • Убедитесь, что вы раскомментировали эти строки в bootstrap.js

bootstrap.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
});
  • Запустили ли вы npm run dev, npm run prod или npm run watch после внесения изменений?

  • Я не уверен в вашем импорте.asset('js/app') вернет http://localhost/js/app.Возможно, вам придется добавить .js в конце, чтобы все импортировалось правильно.

  • Убедитесь, что ваш js/app.js импорт позиционирован до вашего <script></script> тега.

...