【问题标题】:Laravel blade: syntax error, unexpected 'endif' (T_ENDIF)Laravel 刀片:语法错误,意外的 'endif' (T_ENDIF)
【发布时间】:2021-09-16 11:11:08
【问题描述】:

我正在尝试以这种方式在 Laravel 刀片文件中的 HTML 标记内简写 if 语句:

<x-checkbox name="enable" id="enable" {{ ($settings->enable) ? 'checked' : '' }}>
    {{ __('Enable') }}
</x-checkbox>

但它得到了这个错误syntax error, unexpected 'endif' (T_ENDIF)。我研究了类似的问题并尝试了解决方案,但仍然遇到同样的错误。有什么建议吗?提前致谢。

编辑:复选框组件

<label class="inline-flex items-center mt-3">
    <input
        {{ $attributes->merge(['class' => 'form-checkbox h-5 w-5 rounded text-indigo-600']) }}
        name="{{ $name }}"
        id="{{ $name }}"
        type="checkbox"
        >
    <span class="ml-2 text-gray-900 text-md font-medium">{{ $slot }}</span>
</label>

【问题讨论】:

  • 你能显示复选框组件以及这个刀片文件的完整代码吗?提到的代码没有告诉 if 条件在哪里
  • 添加了复选框组件

标签: php laravel laravel-blade


【解决方案1】:

此行抛出错误

<x-checkbox name="enable" id="enable" {{ ($settings->enable) ? 'checked' : '' }}>

所以改变

  <x-checkbox name="enable" id="enable" checked="{{$settings->enable}}">
        {{ __('Enable') }}
    </x-checkbox>

然后在组件中

@props([
'checked'=>false,

])
     <label class="inline-flex items-center mt-3">
            <input
                {{ $attributes->merge(['class' => 'form-checkbox h-5 w-5 rounded text-indigo-600']) }}
                name="{{ $name }}"
                id="{{ $name }}"
                type="checkbox"  {{$checked?'checked':''}}
            >
            <span class="ml-2 text-gray-900 text-md font-medium">{{ $slot }}</span>
        </label>

【讨论】:

  • 它有效。谢谢... 组件需要更多逻辑。不知道。
猜你喜欢
  • 1970-01-01
  • 2018-04-03
  • 2018-11-06
  • 2017-10-30
  • 2013-12-07
  • 2014-10-15
  • 2014-06-15
  • 2014-12-03
  • 2014-06-01
相关资源
最近更新 更多