Livewire public 函数 mount() 未从路由模型绑定接收参数
Livewire public function mount() not recieving parametter from route model binding
我 运行 遇到以下问题,我想将一系列变量从一个 livewire 控制器传递到另一个视图中的另一个 livewire 控制器。
据我所知,最有效的方法是通过路由(路由模型绑定)传递参数,并通过 livewire 控制器中的 mount() 方法接收它。
但是当从 livewire 控制器接收参数时,我得到以下错误。 (即使参数出现在路由中)
Unable to resolve dependency [Parameter #0 [ <required> $prioridad ]] in class App\Http\Livewire\ResultadoConsultaPresupuesto
通过传递变量重定向到所需路由的控制器
$this->validate($validationMoto);
return redirect()->route('resultado-presupuesto', ['prioridad' => $this->Prioridad]);
第二个控制器(接收参数)
class ResultadoConsultaPresupuesto extends Component{
public $Prioridad;
public function mount($prioridad){
$this->Prioridad = $prioridad;
}
public function render()
{
return view('livewire.resultado-consulta-presupuesto');
}
}
路线 (web.php)
Route::get('/resultado-presupuesto/{prioridad}', [PageController::class, 'showResultadosPresupuesto'])->name('resultado-presupuesto');
我已经做了
php artisan route:clear && php artisan route:cache
如果不是在挂载函数中接收参数而是通过以下方式接收参数,如果它有效,但我不明白为什么第一个不起作用
public function mount(){
$prioridad = \Route::current()->parameter('prioridad');
$this->Prioridad = $prioridad;
}
看看这个,您正在使用标准 Laravel 控制器。所以你应该在你的视图中将变量传递给 Livewire 组件
类似于:
<livewire.resultado-consulta-presupuesto :prioridad="$proridad" />
在你需要设置控制器之前
我 运行 遇到以下问题,我想将一系列变量从一个 livewire 控制器传递到另一个视图中的另一个 livewire 控制器。 据我所知,最有效的方法是通过路由(路由模型绑定)传递参数,并通过 livewire 控制器中的 mount() 方法接收它。
但是当从 livewire 控制器接收参数时,我得到以下错误。 (即使参数出现在路由中)
Unable to resolve dependency [Parameter #0 [ <required> $prioridad ]] in class App\Http\Livewire\ResultadoConsultaPresupuesto
通过传递变量重定向到所需路由的控制器
$this->validate($validationMoto);
return redirect()->route('resultado-presupuesto', ['prioridad' => $this->Prioridad]);
第二个控制器(接收参数)
class ResultadoConsultaPresupuesto extends Component{
public $Prioridad;
public function mount($prioridad){
$this->Prioridad = $prioridad;
}
public function render()
{
return view('livewire.resultado-consulta-presupuesto');
}
}
路线 (web.php)
Route::get('/resultado-presupuesto/{prioridad}', [PageController::class, 'showResultadosPresupuesto'])->name('resultado-presupuesto');
我已经做了
php artisan route:clear && php artisan route:cache
如果不是在挂载函数中接收参数而是通过以下方式接收参数,如果它有效,但我不明白为什么第一个不起作用
public function mount(){
$prioridad = \Route::current()->parameter('prioridad');
$this->Prioridad = $prioridad;
}
看看这个,您正在使用标准 Laravel 控制器。所以你应该在你的视图中将变量传递给 Livewire 组件
类似于:
<livewire.resultado-consulta-presupuesto :prioridad="$proridad" />
在你需要设置控制器之前