在laravel + vue.js中广播数据

时间:2017-09-02 13:44:45

标签: javascript laravel

我需要使用社交按钮创建菜单

我有主模板

<!doctype html>
<html lang="{{ app()->getLocale() }}">
<head>
    <title>Lapins - @yield('title')</title>
    @include('head')
</head>
<body>

    <div id="lapins">
        @include('components/header')

        @yield('content')
    </div>

    <script src="js/app.js"></script>
</body>
</html>

这是我的模板路由器

Route::get('/', function () {
    $headerBar = [
        'socials' => [
            [
                'name' => 'Email',
                'type' => 'email',
                'value' => 'support@lapins.com.ua'
            ],
            [
                'name' => 'Phone',
                'type' => 'bell',
                'value' => '066 866 14 23'
            ],
            [
                'name' => 'Facebook',
                'type' => 'facebook',
                'value' => 'http://facebook.com/'
            ],
            [
                'name' => 'Twitter',
                'type' => 'twitter',
                'value' => 'http://twitter.com/'
            ],
            [
                'name' => 'Pinterest',
                'type' => 'pinterest',
                'value' => 'http://pinterest.com/'
            ]
        ]
    ];

    return view('layouts.index', $headerBar);
});

如何在@include('components / header')中广播$ headerBar? 或者这不是解决此任务的正确方法吗?

1 个答案:

答案 0 :(得分:0)

您可以通过执行以下操作将变量简单地传递给Include:

@include('page',['components.header' => $headerBar])

注意:您可以使用点表示法访问部分

'folder.subfolder.file' and not 'folder/subfolder/file'