Est-il possible de rediriger d'une manière ou d'une autre l'utilisateur vers la page d'accueil ( /
) au lieu d'afficher la page 404 ?
Réponses
Trop de publicités?
Charming Robot
Points
1067
Les autres réponses ici échoueront éventuellement parce que le window
n'est pas défini au moment de la construction. Utilisez ceci à la place. Le site useEffect
est équivalent à componentDidMount
.
import { useEffect } from 'react';
import { navigate } from 'gatsby';
export default () => {
useEffect(() => {
navigate('/your-redirect/');
}, []);
return null;
};
Sid
Points
71
Gatsby crée une page 404 à partir de src/pages/404.jsx
(ou 404.js
si vous n'utilisez pas jsx
extension). Ainsi, la création d'un composant qui redirige vers la page d'accueil devrait faire l'affaire, quelque chose comme ceci :
import React from 'react';
export default function NotFound() {
if (typeof window !== 'undefined') {
window.location = '/';
}
return null;
}
Rafaell Lycan
Points
11