gpt4 book ai didi

php - 在 laravel 中动态设置菜单项的事件类

转载 作者:行者123 更新时间:2023-12-02 16:42:04 24 4
gpt4 key购买 nike

我正在使用 bootstrap 4 创建一个 laravel 应用程序。

我在 app.blade.php 中有我的主导航菜单。我有四个主要的 Blade ,关于、产品、联系方式和博客。

然后我需要根据当前页面更改菜单项事件类。由于菜单是从 app.blade.php 动态加载的,所以我必须在导航菜单中动态设置当前页面的事件类。

我所做的是在每个 Blade 中我定义了一个名为 $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>

所以这可以正常工作..

但我想知道这样做是否正确,以及满足我的要求的其他可能方法是什么

最佳答案

除了在布局文件中定义一个$currentPage变量,你可以使用
request()->is() 方法:

<li class="nav-item {{ request()->is('blog') ? 'active' : ''}}">
<a class="nav-link " href="{{ url('blog') }}">{{ __('sentence.Blog') }}</a>
</li>

is() 方法本质上采用请求的当前 url 路径并使用 Str::is()检查您传入的模式。

这样您只需检查当前 URL 是否与链接 URL 匹配,而不必在应用程序的其他地方定义额外的数据。

关于php - 在 laravel 中动态设置菜单项的事件类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61452808/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com