Bou*_*ijn 5 php laravel eloquent laravel-livewire
我有一个包含几张卡片的 Livewire 概述组件。在这些卡中,有一个 livewire 表单,但是当我将该表单包含到概述组件中时,我的整个 livewire 停止工作。
我添加到概述组件文件中的唯一一行是:
@livewire('apply-form')
当我删除该 livewire 方法时,一切都会再次正常工作,但我也需要在我的概述组件中使用该表单。
我做错了什么吗,或者有人可以帮我解决这个奇怪的“错误”吗?
不知道我的 livewire 版本,但资产已过时。
Livewire 也没有给出任何错误。
导致其余部分崩溃的 Livewire 组件的代码:
namespace App\Http\Livewire;
use Illuminate\Support\Facades\Mail;
use Livewire\Component;
use App\Mail\ApplyMail;
use Livewire\WithFileUploads;
class ApplyForm extends Component
{
use WithFileUploads;
public $voornaam;
public $achternaam;
public $woonplaats;
public $geboortedatum;
public $emailadres;
public $telefoonnummer;
public $vacaturenaam;
public $cv;
protected $rules = [
'voornaam' => 'required|max:10',
'achternaam' => 'required|max:10',
'woonplaats' => 'required|max:10',
'geboortedatum' => 'required|date',
'emailadres' => 'required|e-mail',
'telefoonnummer' => 'required|numeric',
'vacaturenaam' => 'required',
'cv' => 'required|mimes:pdf'
];
public function submit()
{
$validated = $this->validate();
$cvRandom = rand(1, 9999999) . '.pdf';
// Upload cv
$this->cv->storeAs('cvs', $cvRandom);
Mail::to('info@nlconnekt.nl')->send(new ApplyMail([$validated, $cvRandom]));
// Reset the values after a form submit
// $this->voornaam = '';
// $this->achternaam = '';
// $this->woonplaats = '';
// $this->geboortedatum = '';
// $this->emailadres = '';
// $this->telefoonnummer = '';
return session()->flash('message', 'Bedankt voor uw sollicitatie. Wij nemen z.s.m contact met u op');
}
public function render()
{
return view('livewire.apply-form');
}
}
Run Code Online (Sandbox Code Playgroud)
嵌套组件时,尝试按照文档中的建议向该 livewire 组件添加键
@livewire('apply-form', ['vacaturnaam' => $vacancy->title], key($vacancy->id))
Run Code Online (Sandbox Code Playgroud)