【发布时间】:2020-08-10 15:35:29
【问题描述】:
我正在使用 bootstrap 4 创建一个 laravel 应用程序。
我的主导航菜单位于 app.blade.php 中。我有四个主要刀片,关于、产品、联系和博客。
然后我需要根据当前页面更改菜单项活动类。由于菜单是从app.blade.php 动态加载的,因此我必须在导航菜单中动态设置当前页面的活动类。
我所做的是在每个刀片中定义一个名为 $currentpage 的变量并为其分配页面名称,假设它是 blog.blade.php
<?php $currentPage = 'blog';?>
@extends('layouts.app')
@section('content')
在app.blade.php,
<li class="<?php if($currentPage =='blog'){echo 'nav-item active';}?>">
<a class="nav-link " href="{{ url('/blog') }}">{{ __('sentence.Blog') }}</a>
</li>
所以这可以正常工作..
但我想知道这是正确的做法吗?还有哪些其他可能的方法可以满足我的要求
【问题讨论】:
-
是的,我更喜欢这种方式,因为我在我的项目中使用过这种方式
-
没错。 Bt 我建议使用三元运算符:
(condition) ? true : false; -
您也可以对页面使用会话,当特定页面在控制器中渲染时,您可以在会话中设置页面名称,这样做的好处是您不需要为每个刀片文件都去设置页面名称。
标签: php laravel laravel-5 bootstrap-4 navigation