Laravel5 路由,根据路由在 blade 模板中有所不同

Laravel5 route, Different in the blade template depending on routing

我正在努力实现如下目标:

根据地址后面的路由,它会在屏幕上显示不同。

if /register ->

  1. http://laravel.dev/register
    • resources/views/layouts/master.blade.php

<nav class='navbar navbar-toggleable-md bg-info fixed-top navbar-info' color-on-scroll='500'>

else if /home ->

  1. http://laravel.dev/home
    • resources/views/layouts/master.blade.php

<nav class='navbar navbar-toggleable-md bg-info fixed-top navbar-transparent' color-on-scroll='500'>

提前致谢。

一个想法是使用某种 路由参数 作为标志来告诉您的页面 "context" 它正在加载。

例如,根据您的路由设置方式,您可以在路由函数或控制器函数中添加代码,例如:

$url = parse_url($_SERVER['REQUEST_URI']);
$path = $url['path'];
$isRegisterPage = in_array("register", explode("/", $path));

然后您可以在 blade 模板中检查变量“$isRegisterPage”以确定加载哪个导航栏。

试试这个:

    @if(request()->is('register'))
        <nav class='navbar navbar-toggleable-md bg-info fixed-top navbar-info' color-on-scroll='500'>
    @elseif(request()->is('home'))
        <nav class='navbar navbar-toggleable-md bg-info fixed-top navbar-transparent' color-on-scroll='500'>
    @endif