Как это работает (внутренне) при возврате компонента Navigate в React Router v7?Javascript

Форум по Javascript
Anonymous
Как это работает (внутренне) при возврате компонента Navigate в React Router v7?

Сообщение Anonymous »

Я пытаюсь реализовать перенаправление на основе свойства, переданного компоненту, вложенному глубоко в мою иерархию маршрутов. Сейчас я знаю 2 варианта, как это сделать.

Код: Выделить всё

const MyComponent = ({ variable }: { variable: string }) => {
return variable === "xxx" ?  : null;
};
по сравнению с

Код: Выделить всё

const MyComponent = ({ variable }: { variable: string }) => {
const navigate = useNavigate();

useEffect(() => {
if (variable === "xxx") {
navigate("/some/location", { replace: true })
}
}, [navigate, variable]);

return null;
};
Эти два подхода технически одинаковы? ИИ сказал мне, что использование навигации внутри эффекта вызовет вспышку у пользователя, а возврат Navigate «немедленно вызовет навигацию без вспышки».

Подробнее здесь: https://stackoverflow.com/questions/798 ... act-router

Вернуться в «Javascript»