访问 Laravel Blade 组件内的 $errors

Owe*_*wen 5 components laravel laravel-blade

我有一个“错误消息”组件,可以通过以下方式使用

@component('error-messages')
    // Some slot stuff which is used for various things.
@endcomponent

Run Code Online (Sandbox Code Playgroud)

然后在其中我尝试访问$errors- 但是袋子是空的,当我@dump($errors)在组件外部,然后在组件内部时,您可以在下面看到。

在此输入图像描述

当我使用@include它时它可以工作,但@component它是空的

我知道我可以传递$errors到组件中,但这需要在任何地方发生 - 这并不理想。

有人知道如何解决这个问题吗?

And*_* Y. 0

通过以下方式在主视图中分享:

@php
  @View::share('errors', $errors);
@endphp
Run Code Online (Sandbox Code Playgroud)

或在控制器中

    $validator = Validator::make($request->all(), $this->rules());
    if ($validator->fails()) {
        View::share('item', $item);
        $view = view('admin.param_type.form')->withErrors($validator->errors());
        View::share('errors', $view->errors);
        return $view;
    }
Run Code Online (Sandbox Code Playgroud)