Laravel" Echo没有定义"当没有从命令" php artisan serve"在服务器上运行时

时间:2018-02-10 16:03:22

标签: php laravel

我的laravel应用程序现在在Apache上运行, 我是通过复制' public'来自laravel项目文件夹的文件夹,并粘贴在apache根文件夹中的htdocs中。

一切正常。

我按照https://laravel.com/docs/5.5/broadcasting#installing-laravel-echo

实施Echo

从命令

测试服务时没有错误并且工作正常

php artisan serve

(在端口8000上)

但是当我访问文件格式端口80时,它会在浏览器的控制台上显示此错误 (我没有改变任何事情)

  

未捕获的ReferenceError:未定义Echo

这是包含错误文件。

<!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <!-- CSRF Token -->
    <meta name="csrf-token" content="{{ csrf_token() }}">

    <title>Clean Gem Service</title>

    <!-- Styles -->
    <link href="{{ asset('css/app.css') }}" rel="stylesheet">
    <script src="{{ asset('js/jquery.js') }}"></script>    

</head>
<body>

<div id="app-notification"></div>

<script src="{{ asset('js/app.js') }}"></script>
<script>
    Echo.private('NewOrderChannel')
        .listen('NewOrderEvent', (e) => {
            console.log(e);
    });
</script>
</body>
</html>

这是怎么回事? 我错误地部署了我的应用程序吗?以及如何解决它

感谢。

1 个答案:

答案 0 :(得分:0)

你有没有提供Echo?

“一旦安装了Echo,您就可以在应用程序的JavaScript中创建一个新的Echo实例了。这样做的一个好地方是位于资源/ assets / js / bootstrap.js文件的底部。 Laravel框架“

https://laravel.com/docs/5.5/broadcasting#installing-laravel-echo

如果是这样,您似乎需要使用window.Echo