【问题标题】:Laravel Blade PHP component class get parent dataLaravel Blade PHP 组件类获取父数据
【发布时间】:2022-01-26 01:25:33
【问题描述】:

我正在创建一些 Laravel 刀片组件。

我有几个带有 PHP 类的组件以及相应的视图文件。

我的 PHP 类中需要父组件数据。

我知道可以在视图文件中使用 @aware(['color' => 'gray'])

但是可以在 PHP 组件中获取数据吗?那怎么办?

例如,我有两个组件

Components/Menu.php 
Componets/MenuItem.php

我需要Componets/MenuItem.php 中的一些Components/Menu.php 数据

【问题讨论】:

  • 尝试@include@yield 来实现这一点。 laravel.com/docs/8.x/blade
  • 你能添加一些代码来解释你需要从父母那里得到的数据

标签: laravel laravel-8 balde


【解决方案1】:

您可以使用继承: 子类将从父类继承所有公共和受保护的属性和方法。

菜单组件:


namespace App\View\Components;

use Illuminate\View\Component;

class Menu extends Component
{
    public $parent_Data;

    public function __construct($parent_Data)
    {
        $this->parent_Data = $parent_Data;
    }

    public function render()
    {
        return view('Menu');
    }
}

菜单项组件

<?php

namespace App\View\Components;

use Illuminate\View\Component\Menu;

class MenuItem extends Menu
{
    public $publicData;

    public function __construct($publicData,$parent_Data)
    {
        $this->parent_Data = $parent_Data;
        $this->publicData = $publicData;
    }

    public function render()
    {
        return view('MenuItem');
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-15
    • 1970-01-01
    • 2016-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-30
    • 2017-01-04
    相关资源
    最近更新 更多