阅读(332) (12)

Laravel 8 在类中使用属性 & 插槽

2021-06-28 16:48:18 更新

Blade 组件也允许您在类的渲染方法中访问组件的名称,属性以及插槽。当然,为了访问这个数据,您应该在组件的 render 方法中返回一个闭包函数。这个闭包函数接收一个名为 $data 的数组作为它唯一的参数:

/**
 * 获取组件的视图 / 内容
 *
 * @return \Illuminate\View\View|\Closure|string
 */
public function render()
{
    return function (array $data) {
        // $data['componentName'];
        // $data['attributes'];
        // $data['slot'];

        return '<div>Component content</div>';
    };
}

componentName 等于使用 x- 作为前缀后 HTML 标签中使用的名称。 attributes 元素包含所有可能出现在 HTML 标签中的属性。 slot 元素是一个 Illuminate\Support\HtmlString 实例,该实例包含组件中的插槽定义的内容。