【问题标题】:Laravel 8 components @props directive is not workingLaravel 8 组件 @props 指令不起作用
【发布时间】:2021-05-10 04:48:42
【问题描述】:

错误异常 未定义变量:label(视图:resources/views/components/forms/select.blade.php)

我该如何解决这个问题? 我尽一切努力解决这个问题,但我找不到解决方案。我已经解决这个问题5天了!

我将 Laravel 7 升级到 8。

现在 Laravel:v8.26.1

<x-forms.select name="subject" label="Subjects" value="test">
    @foreach($user->subjects as $subject)
        <option value="{{$subject->id}}">{{$subject->name}}</option>
    @endforeach
</x-forms.select>
// app/View/Components/Forms/Select.php

<?php

namespace App\View\Components\Forms;

use Illuminate\View\Component;

class Select extends Component
{
  
    public function render()
    {
        return view('components.forms.select');
    }
}
// resources/views/components/forms/select.blade.php

@props(['label'])
{{$label}}

<label class="form-label">{{ $attributes->get('label') }}</label>

<select class="form-select" aria-label="Default select" {{$attributes}}>
    {{ $slot }}
</select>

Laravel 8 组件 @props 指令不起作用:

【问题讨论】:

  • 检查storage/framework/views 中已解析的.php 文件以查看正在执行的实际php 代码。它可能会给你一些提示。

标签: php laravel laravel-blade laravel-8


【解决方案1】:

谢谢你,泰勒·奥特维尔

@props 仅适用于没有类的匿名组件。如果您使用的是类,请查阅此文档:Passing Data To Components | Laravel

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-14
    • 2021-04-20
    • 2021-10-14
    • 2021-07-19
    • 2021-05-09
    • 2017-10-17
    相关资源
    最近更新 更多