Projeto base original: https://github.com/LeviLimaOliveira/reactRouter
Projeto para ser clonado: https://github.com/Dirceusljr/DC-projeto-aula
- Criar uma pasta para o projeto;
- Criar um repositório novo;
- Abrir o VS Code na pasta do projeto e usar o comando:
git clone https://github.com/Dirceusljr/DC-projeto-aula .
- Usar os seguines comando após o projeto ser clonado:
git init
git remote set-url origin URL-do-repositório-criado
git checkout -b main
git add .
git commit -m 'mensagem'
git push --set-upstream origin main
- Organização dos arquivos em pastas:
- Pastas
-- Components
-- Pages
-- Json
- Arquivo router.jsx dedicado a rotas;
- Filosofia SOLID (Saiba mais nesse link sobre SOLID)
- Arquivo main.jsx apenas para renderizar
npx json-server -w src/json/db.json
OBS: Nesse projeto não foi usado, mas recomendo usar um arquivo para chamado jsconfig.json como esse do link na pasta raiz para ter caminhos de endereços mais curtos.
- Criação de uma terceira coluna com três ícones para Favoritos, Editar e Deletar;
- Página Favoritos com layout semelhante ao de Produtos;
Problema
Passar um estado (favorito) da página Produtos para ser listado na página Favoritos sendo que não há relação pai-filho entre elas e evitar o prop-drilling.
Solução
Utilizar React Context para manusear os estados e usar um hook personalizado para o criar uma nova lista.