使用插槽时 Laravel Livewire 组件中未定义变量 $slot 错误

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

我正在开发一个 Laravel 应用程序,使用 Livewire 作为动态组件。我正在尝试使用插槽将数据传递到 Livewire 组件,但我不断遇到“未定义变量

$slot
”错误。我已遵循 Livewire 插槽的标准文档,但无法解决此问题。

Livewire 组件视图 (

resources/views/livewire/example-component.blade.php
):

<div>
    <h1>Here's the slot content:</h1>
    {{ $slot }}
</div>

在我的刀片模板中的用法

@extends('layouts.app')

@section('content')
    <livewire:example-component>
        <p>test</p>
    </livewire:example-component>
@endsection

为什么当我尝试加载页面时会出现“未定义变量

$slot
”错误。有谁知道为什么 Livewire 无法识别插槽内容,或者我还可以检查哪些内容来解决此问题?

laravel laravel-livewire
1个回答
0
投票

从文档中,您可以使用以下内容。如果未定义

$slot
,则定义默认值。您可以将其更改为仅包含提供
$slot
的内容。

<span class="alert-title">{{ $title }}</span>
 
<div class="alert alert-danger">
    @if ($slot->isEmpty())
        This is default content if the slot is empty.
    @else
        {{ $slot }}
    @endif
</div>
© www.soinside.com 2019 - 2024. All rights reserved.