如何从 Livewire 处理程序中显示 Blade 视图

问题描述 投票:0回答:1

具有带有

wire:click="toggleChecked"
子句的 Livewire 组件,此处理程序是:

public function toggleChecked(): void
{
    (new ScaleController())->index();
}

我想通过这个处理程序显示欢迎屏幕。

控制器代码很简单:

class ScaleController extends Controller
{
    public function index(): mixed
    {
        return view('welcome');
    }
}

我在路线中使用了这个方法(

index
),所以它本身就有效。

但是当我从 Livewire 处理程序调用它时 - 代码被执行(通过交互式调试检查),但没有显示任何视觉变化。

如何从 Livewire 处理程序获取视觉变化?

laravel laravel-blade laravel-livewire
1个回答
0
投票

你都做错了。让我们从基础开始吧。
切勿使用

new Controller

// Livewire component

use Livewire\Component;

class Show extends Component
{
    public bool $show = false;
    
    public function render()
    {
        return view('livewire.show');
    }
}
// Livewire view

<div>
    <button wire:click="$toggle('show')">
        Show welcome
    </button>

    @if($show)
        @include('welcome')
    @endif
</div>

https://livewire.laravel.com/docs/actions#toggle

© www.soinside.com 2019 - 2024. All rights reserved.