如何解决Laravel livewire,在键入表单时阻止自动渲染
对不起,在使用实时软件创建简单表单时出现问题,我输入的每种类型都将立即呈现,从而使其看起来正在加载,并且经过大量键入后,在图像中出现了错误,如何解决此问题并防止在键入时自动渲染?
我使用Laravel liveware 1.3
屏幕截图
刀片组件
realloc
控制器
<form wire:submit.prevent="check"><div class="form-group">
<label class="label">Email</label>
<div class="input-group">
<input wire:model="email" type="email" class="form-control" placeholder="xxx@xxx.xx">
<div class="input-group-append">
<span class="input-group-text">
<i class="mdi mdi-check-circle-outline"></i>
</span>
</div>
</div>
@error('email')<label class="text-danger">{{ $message }}</label> @enderror
</div>
<div class="form-group">
<label class="label">Password</label>
<div class="input-group">
<input wire:model="password" type="password" class="form-control" placeholder="**********">
<div class="input-group-append">
<span class="input-group-text">
<i class="mdi mdi-check-circle-outline"></i>
</span>
</div>
</div>
@error('password')<label class="text-danger">{{ $message }}</label> @enderror
</div>
<div class="form-group">
<button class="btn btn-success submit-btn btn-block" wire:loading.attr="disabled" >
<div wire:loading.remove>Login</div>
<div wire:loading>
<div class="loading-bar bg-white"></div>
<div class="loading-bar bg-white"></div>
<div class="loading-bar bg-white"></div>
<div class="loading-bar bg-white"></div>
</div>
</button>
</div>
</form>
路线
<?php
namespace App\Http\Livewire;
use Livewire\Component;
class Login extends Component
{
public $password;
public $email;
protected $rules = [
'password' => 'required','email' => 'required|email',];
public function check()
{
$this->validate($this->rules);
}
public function render()
{
return view('livewire.login');
}
}
感谢帮助。
解决方法
<input wire:model="email".....
尝试将其更改为(仅在提交时点击服务器)
<input wire:model.defer="email"
甚至(仅在更改时才击中服务器(不是在每个字符上))
<input wire:model.lazy="email"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。