Опечатка в имени маршрута компилируется, хотя конфиг описан типом
type Route = { path: string; auth: boolean };
const routes: Record<string, Route> = {
home: { path: "/", auth: false },
orders: { path: "/orders", auth: true },
};
navigate(routes.ordres.path); // опечатка
Опечатка прошла компиляцию и упала в рантайме. Как сохранить проверку формы каждого маршрута и при этом получить ошибку на routes.ordres?
- Заменить аннотацию на satisfies Record<string, Route>
- Добавить as const после объекта и оставить аннотацию
- Заменить Record<string, Route> на Record<string, Route | undefined>
- Описать routes через interface вместо type
