Livewire如何向平行组件树中的子组件emit事件?
Livewire跨同级父组件的子组件发送事件方法
不管发送组件和目标组件的父级层级关系,只要知道目标组件的完整别名,就能直接触发事件,有两种常用方式:
前端JavaScript触发
在Table2的视图文件里,直接使用和abc.blade.php相同的写法即可:
window.livewire.emitTo('components.modals.modal2', '你的事件名', 可选参数)
后端PHP触发
如果是在Table2的PHP组件类中发送事件,同样使用完整别名:
$this->emitTo('components.modals.modal2', '你的事件名', 可选参数);
关键说明
Livewire的emitTo是通过组件的完整别名(或类的完整命名空间)来定位组件的,和组件在DOM中的嵌套层级、父级关系无关。只要目标组件(Modal2)已经正常挂载在页面上,且别名拼写正确(比如对应类App\Http\Livewire\Components\Modals\Modal2的别名就是components.modals.modal2),就能成功触发事件。
内容的提问来源于stack exchange,提问作者burf
相关产品推荐
相关产品推荐

