1

以下代码不显示数据。但是,如果我 dd 数据它可以工作

Livewire 公司.php:

public $company;

public function mount(Company $company) {
    $this->company = $company;
}

public function render()
{
    return view('livewire.company');
}

livewire.公司:

<div>
{{$company->name}}</div>

虽然如果我 dd $company->name 它可以工作

网页.php:

Route::livewire('/companies/{company}', 'company')->name('show-company');

布局/app.blade.php:

@livewireStyles @livewire('company') <script src="{{asset('js/app.js')}}"></script> @livewireScripts

另外,如果我不使用 Route Model Binding 而是像这样查找它

$this->company = Company::find($company);

它抛出不可解析的依赖解析 [Parameter #0 [ $company ]]

4

1 回答 1

0

看起来您在 mount 函数中收到了一个模型,但是从 layouts/app.blade.php 调用它时,您没有传递任何参数。所以,而不是

@livewire('company')

你可以这样称呼:

@livewire('company',['company' => App\Company::find(1)])

在这里,我使用了我的第一个公司模型实例,但您可以发送您需要的内容。但请记住,您应该传递一个模型,因为您在 mount() 中收到了一个模型。

希望它会工作。

于 2020-05-14T05:42:03.770 回答