laravel中使用include和component方法中的一点小区别

@component('share.header.zt_topbar2')@endcomponent
@include('share.header.zt_nav2')

  

上面两种方法都可以laravel的视图中引入模板或者组件

但是有点小区别
如果在使用的视频中定义变量,在用component方法引入的时候,是无法使用的。
而在include的方法中引入时可以在公共模板中取到此值。

公共模板或组件

<div id="common-nav">
    <div class="cc">
        <a href="{{ config('const.commonUrl.top') }}" target="_blank"><div class="common-logo"></div></a>
        <ul class="nav-c">
            <li class="{{ ($page ?? '') == 'bs' ? 'active' : '' }}"><a href="{{ config('const.commonUrl.bs') }}" onclick="{{ $page ?? '' == 'bs' ? 'return false;' : '' }}" target="_blank">教资笔试</a></li>
            <li class="{{ ($page ?? '') == 'ms' ? 'active' : '' }}"><a href="{{ config('const.commonUrl.ms') }}" onclick="{{ $page ?? '' == 'ms' ? 'return false;' : '' }}" target="_blank">教资面试</a></li>
            <li class="{{ ($page ?? '') == 'zk' ? 'active' : '' }}"><a href="{{ config('const.commonUrl.zk') }}" onclick="{{ $page ?? '' == 'zk' ? 'return false;' : '' }}" target="_blank">教师招聘</a></li>
            <li class="{{ ($page ?? '') == 'pth' ? 'active' : '' }}"><a href="{{ config('const.commonUrl.pth') }}" onclick="{{ $page ?? '' == 'pth' ? 'return false;' : '' }}" target="_blank">普通话考证</a></li>
        </ul>
        <div class="common-tel"></div>
    </div>
</div>

需要使用的视图

<?php $page = 'zk'; ?>

@include('share.header.zt_nav2') // 此时$page在模板里面有值

  

@component('share.header.zt_topbar2')@endcomponent
// 里面取不到$page的值

  

猜你喜欢

转载自www.cnblogs.com/ichenchao/p/12508746.html