Код: Выделить всё
import { RouteList } from 'ziggy-js';
type Routes=keyof RouteList;
type NavigationItem = {route_names:Routes[];key:string}
const retrieveActiveRoute = (navigationItems: NavigationItem[] ): string => {
const current_route = route().current() as keyof RouteList;
if (!current_route) return '0';
for (const { route_names, key } of navigationItems) {
const existentRoute = route_names.includes(current_route);
if (existentRoute) {
return key;
}
}
return '0';
};
< /code>
Проводник, созданный Ziggy Helper, можно найти с помощью команды < /p>
php artisan route:list
< /code>
Хотя я могу создавать два маршрута с разными методами, я просто не хочу давать два разных имена для вещей, которые должны иметь одинаковое имя, например, маршрут, который я хочу использовать как пост, так и методы получения.//...previous routes
Route::GET('/invoices',[CustomController::class,'custom_method'])->name('invoices.index');
Route::POST('/invoices',[CustomController::class,'custom_method'])->name('invoices.index');
Код: Выделить всё
const exampleNavigationItems:NavigationItem[]=[
{
route_names:['home'],
key:'1'
},
{
route_names:['invoices'],
key:'2'
},
];
const currentRouteKey = retrieveActiveRoute(exampleNavigationItems)
console.log(currentRouteKey);
Подробнее здесь: https://stackoverflow.com/questions/796 ... me-route-n
Мобильная версия