0

我的项目需要 livewire 包,但以前没有使用过。一些 livewire 组件在不刷新页面的情况下无法工作,我不明白这是为什么。

<form wire:submit.prevent="login_method">
    <input type="text" wire:model="login.email" id="email">
    <input type="password" wire:model="login.password" id="password">
    <button type="submit">Login</button>
</form>
class Login extends Component
{
    public $login;

    public function login()
    {
        return dd($this->$login);
    }
    
    public function render()
    {
        return view('livewire.auth.login')->extends('layout.default');
    }
}

注意:我使用 Turbolinks (SPA)。在不刷新浏览器的情况下切换页面。

当我禁用 Turbolinks 时,表单提交工作,但是当 Turbolinks 处于活动状态时,在页面之间切换时会加载 livewire 组件,但操作不起作用。

Laravel 8.12 / Livewire 2.3 / Turbolinks 5.2

4

1 回答 1

0

请将表单标签中的方法名称从 login_method 更改为 login ,如下面的代码所示。

<form wire:submit.prevent="login">
    <input type="text" wire:model="login.email" id="email">
    <input type="password" wire:model="login.password" id="password">
    <button type="submit">Login</button>
</form>
于 2021-05-29T11:37:17.293 回答