No meu codigo, o que coloquei dentro do element={<div> pagina não encontrada</div>}
ele ficou no top da pagina e independente da /qualquercoisa que for procurar ele fica la sempre , é como se ele fizesse parte do conteudo do <nav>
No meu codigo, o que coloquei dentro do element={<div> pagina não encontrada</div>}
ele ficou no top da pagina e independente da /qualquercoisa que for procurar ele fica la sempre , é como se ele fizesse parte do conteudo do <nav>
Oi Letícia, tudo bem?
Vi que você já finalizou o curso, mas irei te dar dicas sobre o que faze.
Entendo que você está tendo problemas com a rota path='*'
no React Router. A rota path='*'
é comumente usada para tratar rotas não existentes, apresentando uma página de erro 404, por exemplo.
Pelo que você descreveu, parece que o conteúdo que você colocou no element={}
está sempre sendo exibido, independente da rota acessada. Isso pode estar acontecendo devido à ordem das suas rotas. No React Router v6, a ordem das rotas importa. As rotas são verificadas de cima para baixo, e a primeira que corresponder ao caminho atual será renderizada.
Portanto, a rota path='*'
deve ser a última na lista de rotas dentro do componente Routes
. Isso porque ela corresponde a qualquer caminho, então, se estiver no topo da lista, será sempre a primeira a corresponder, e seu conteúdo será sempre renderizado.
Aqui está um exemplo de como deveria ser:
<Routes>
<Route path="/" element={<HomePage />} />
<Route path="/about" element={<AboutPage />} />
<Route path="*" element={<div>pagina não encontrada</div>} />
</Routes>
Neste exemplo, se o caminho for '/', a HomePage
será renderizada. Se for '/about', a AboutPage
será renderizada. Para qualquer outro caminho, o conteúdo 'pagina não encontrada' será renderizado, pois a rota path='*'
é a última na lista.
Espero ter ajudado.
Um abraço e bons estudos.