问题描述
我正在为一个新项目使用livewire,所以我希望使用模式进行原始操作,在这种情况下,我想使用一个负责创建和更新vuejs的模式。我尝试这样做,但这不起作用
在我的刀刃上
<form class="form" wire:submit.prevent="$editMode ? update : store">
在我的组件中
public $editMode = false;
public function store() {
$this->editMode = false;
// code here
}
public function update() {
$this->editMode = true;
// code here
}
Livewire版本:2.x,
我可以实现这一目标吗?还是我必须为此使用两种模式?预先感谢
解决方法
您的Livewire属性无法解析PHP,因此您需要使用blade将其回显。然后,当您更新Livewire组件中的$editMode
属性时,将使用新的Submit方法重新渲染该组件。
<form class="form" wire:submit.prevent="{{ $editMode ? 'update' : 'store' }}">
<!-- The rest of the form -->
</form>