Laravel Echo提示'Laravel Echo cannot be found'错误的排查与解决
问题现象
- 已正确配置Livewire与
app.js的加载顺序,bootstrap.js中可正常打印Echo实例,说明Echo已成功加载 - 当在Livewire组件的
getListeners方法中添加私有频道监听规则(示例:echo-private:statements.{$this->statement->id},StatementCompleted)时,页面触发「Laravel Echo cannot be found」警告;注释该行监听规则后,警告消失 - 尝试直接在JS中手动监听对应频道,无日志输出,但Pusher调试控制台可确认事件已正常触发
- 涉及的
StatementCompleted事件已实现ShouldBroadcast接口,频道路由暂时返回true用于测试
解决方法
- 新建
alpine-split.js文件,将AlpineJS的导入逻辑拆分到该文件中 - 调整页面脚本加载顺序:
- 先加载
app.js - 再加载
@livewireScripts - 最后加载
alpine-split.js
- 先加载
调整完成后,「Laravel Echo cannot be found」警告消失,Livewire的私有频道监听功能正常工作。
内容的提问来源于stack exchange,提问作者hyphen
相关产品推荐
相关产品推荐

