You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Echo未定义问题求助:已引入echo.min.js仍报错

解决Laravel Echo检测为undefined的问题

方案一:移除检测脚本的type="module"属性

将检测脚本改为普通全局脚本,即可正常访问window.Echo:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Test Laravel Echo</title>
</head>
<body>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/pusher/7.0.3/pusher.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/laravel-echo/1.16.1/echo.min.js"></script>

    <script>
        document.addEventListener('DOMContentLoaded', function () {
            if (window.Echo) {
                console.log('Laravel Echo is loaded');
            } else {
                console.error('Laravel Echo is not loaded');
            }
        });
    </script>
</body>
</html>

原因:type="module"的脚本运行在独立的模块作用域中,你引入的echo.min.js是UMD格式,在模块环境下可能不会自动挂载到全局window对象。改为普通脚本后,运行在全局作用域,就能直接访问挂载好的window.Echo。

方案二:使用ES模块方式导入(保留type="module")

如果需要继续使用模块脚本,改用ES模块版本的Laravel Echo和Pusher,通过import导入并处理依赖:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Test Laravel Echo</title>
</head>
<body>
    <script type="module">
        import Pusher from 'https://cdnjs.cloudflare.com/ajax/libs/pusher/7.0.3/pusher.min.mjs';
        import Echo from 'https://cdnjs.cloudflare.com/ajax/libs/laravel-echo/1.16.1/echo.esm.min.js';

        // 将Pusher挂载到全局,满足Laravel Echo的依赖要求
        window.Pusher = Pusher;

        console.log('Laravel Echo is loaded');
        // 可在此处初始化Echo实例
        // const echoInstance = new Echo({
        //     broadcaster: 'pusher',
        //     key: '你的Pusher密钥',
        //     cluster: '你的Pusher集群'
        // });
    </script>
</body>
</html>

原因:ES模块版本的库不会自动挂载到全局,需要手动导入;同时Laravel Echo依赖全局的Pusher对象,所以需要将导入的Pusher挂载到window。

内容的提问来源于stack exchange,提问作者Inba V

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 11:05:15