【问题标题】:Laravel - check if routes on bladeLaravel - 检查刀片上的路线
【发布时间】:2020-05-19 17:23:39
【问题描述】:

我需要检查2条路线,如果有一条,添加一些内容

@if (Route::current()->uri() != '/' || Route::current()->uri() != 'login')<div>add some content some contnt </div> @endif

我尝试过使用“||”和“或”和“或”。我也试过Request::path(),它只在检查1条路线时有效

@if (Route::current()->uri() != '/') <div>add some content some contnt </div> @endif

如果我尝试 2 条路线,它似乎不起作用

【问题讨论】:

  • if 语句对我来说看起来不错。应该管用。请注意,您正在检查是否不是 root 或未登录。当您发现地址栏中显示的 URL 不起作用时,它是什么?

标签: laravel routes laravel-blade


【解决方案1】:

您需要使您的条件正确,因为您在 url 和字符串之间进行比较。 请试试这个:

URL::current() != url('/')

【讨论】:

    【解决方案2】:

    我会改用路由名称和in_array...

    在你的 web.php 中

    Route::get('/', ...)->name('home');
    Route::get('/login', ...)->name('login');
    

    然后你可以做这样的事情

    in_array(Route::currentRouteName(), ['home', 'login'])
    

    【讨论】:

      【解决方案3】:

      尝试改用路由名称。在你的 web.php 文件中放这个:

      Route::get('/')->name('home');
      Route::get('/login')->name('login');
      

      然后将您的 if 条件更改为:

      @if (Route::currentRouteName() != 'home' || Route::currentRouteName() != 'login')
      <div>add some content some contnt </div> 
      @endif
      

      【讨论】:

        【解决方案4】:

        您可以使用内置方法来检查路由名称或模式。

        见Route::is() 或Route::currentRouteNamed()

        例如:

        Route::get('users', 'Controller..')->name('users.index');
        Route::get('users/{id}', 'Controller..')->name('users.show');
        

        假设您在以下路径中:users/1

        @if(Route::is('users.show') )
            // true
        @endif
        
        @if(Route::is('users') )
            // false
        @endif
        
        @if(Route::is('users.*') )
            // true
        @endif
        

        所以在你的例子中尝试@if(Route::is('home') or Route::is('login'))..@endif

        【讨论】:

          【解决方案5】:

          你也可以这样做:

          request()-&gt;routeIs('categories') 要么 request()-&gt;routeIs(['categories', 'services'])

          【讨论】:

            猜你喜欢
            • 2022-01-15
            • 2015-12-15
            • 2020-03-06
            • 2015-02-13
            • 1970-01-01
            • 2018-04-01
            • 2017-03-12
            • 2016-09-13
            • 2014-01-05
            相关资源
            最近更新 更多