我想在下拉列表中选择一个选项时,在livewire中触发一个函数。但使用wire:click或wire:change dd的函数不起作用。在livewire中有没有一条线路: bla bla?
<x-select name="course_id" label="{!! __('Ders') !!}" wire:model="course_id" wire:change="courseSelected" id="course_id" :options="$this->courses"/> public function courseSelected(){
dd("here");
}发布于 2021-11-08 14:48:25
您应该在生命周期中挂接到更新后的方法。
https://laravel-livewire.com/docs/2.x/lifecycle-hooks
public function updatedCourseId(){
dd("here");
}另移除关联:更改
发布于 2021-11-09 02:53:21
如果使用wire:model将元素绑定到属性,则可以如上所述挂接生命周期
public function updatedCourseId($value)
{
dd($value);
}在另一种方法中,您可以使用wire:change监听事件,为此,必须在listener属性中定义事件,如下所示
<x-select label="{!! __('Ders') !!}" wire:change="$emit('courseSelected', $event.target.value)" id="course_id" :options="$this->courses"/>
// in component
protected $listeners = [
'courseSelected'
];
public function courseSelected($value)
{
dd($value);
}https://stackoverflow.com/questions/69884321
复制相似问题