Laravel route Вызов функции-члена getName () со значением NULL - PullRequest
1 голос
/ 22 февраля 2020

У меня есть очень простая черта для навигации по сайту администратора, которая содержит массив элементов навигации. У меня есть другой метод, чтобы проверить маршрут и установить активный класс для элемента. В браузерах он работает нормально, но в терминале, используя artisan, выдает следующую ошибку:

Метод черты

protected function getActiveClass($routeName)
{
    return (Route::current()->getName() == $routeName) ? 'active' : NULL;
}

Symfony \ Component \ Debug \ Exception \ FatalThrowableError: Call функции-члену getName () в null

Trait полный код

namespace App\Traits;


use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\View;

trait AdminMenu
{

    /**
     * @return array
     */
    public function navItems()
    {
        $sideNavItems = [
            [
                'nav'    => 'dashboard',
                'label'  => __('admin.menu.dashboard'),
                'icon'   => 'tachometer-alt',
                'route'  => route('admin.dashboard'),
                'active' => $this->getActiveClass('admin.dashboard'),
            ],

            ...

        ];

        View::share('navItems', $sideNavItems);
    }

    /**
     * @param $routeName
     *
     * @return string|null
     */
    protected function getActiveClass($routeName)
    {
        return (Route::current()->getName() == $routeName) ? 'active' : NULL;
    }
}

Ответы [ 2 ]

1 голос
/ 22 февраля 2020

Хорошо, решил это. Завершение с условием путем проверки текущего маршрута.

protected function getActiveClass($routeName)
{
    if (Route::is($routeName)) {
        return (Route::current()->getName() == $routeName) ? 'active' : NULL;
    }

    return NULL;
}
0 голосов
/ 22 февраля 2020

Вы можете использовать

if ($request->route()->named($routeName)) {
     return 'active';
}

return NULL;

Laravel Проверка текущего маршрута

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...