This project was generated with Angular CLI version 13.3.5.
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The application will automatically reload if you change any of the source files.
Run Json Server and watch db.json file
Por se tratar de uma avaliação de front end com angular e angular material foram priorizados os desenvolvimentos dos componentes relacionados ao frontend da aplicação. A solução do banco de dados MySQL foi substituída pela solução Json-Serve.
- Criação projeto com angular
- Criação dos componentes;Add, Edit, List, Login, Register
- Criação do Router com as rotas (endpoints)
- Criação do router-outlet no index.html
- Instalação do material e apenas os componentes que vou utilizar na aplicação dentro do app.module.ts
- Criação do Students.Service; HttpClient, e criação da url.
- Criação do método para listar todos alunos
- Importação do servisse dentro do componente de listagem de alunos
- Injeção de dependência
- Inscrição no método getall do service
- Criação da mat-table para receber a lista de alunos
- Importação do reactive forms
- Importação do mat-form-field
- Criação do formgroup; nome, sobrenome, email.
- Criação do método para salvar dados utilizando método post
- Importação do Student.Service no componente Add
- Inscrição do método no de salvar dados
- Importação do snackbar para informar operações realizadas
- Criação da mensagem do snackbar no método que salva os dados
- Criação do comando que resta o formulário
- Criação de uma nova coluna com botões de editar e apagar aluno
- Na tabela de listar estudantes escutando um evento de click e recuperando o ID para remover o aluno do banco de dados
- Crio o método deleteStudent que usa o parâmetro ID para buscar registro no DB
- Crio esse método no service também
- No list-student uso método do service e faço a inscrição.
- No Service passo os parâmetros para deleção
- Coloco o método ngOnInit dentro do método de deletar estudante.
- No router declaro que a rota ira receber o ID como parâmetro
- Importo o Formgroup, Service, Snackbar dentro do componente de edição
- Injeção de dependência; StudentService, Snackbar
- Criação do formulário de edição
- Criação do método de update
- Importação do RouterModule e ActivateRouter
- Injeção do ActivateRouter
- Faço snapshot para recuperar o ID da rota
- No Service crio o método getStudentById
- Uso o método getStudentById no OnInit do componente de edição
- Passo o form como os dados do aluno para serem editados
- Criação do método PUT para atualizar o aluno no Service
- Método update usa o ID e os dados para atualizar
- Importação do Router no edit student para navegar até o componente Lista pois edição do aluno
- Criação de Snackbar para deleção de aluno
- Importação do MatTableDataSource para criação de filtro de busca de aluno
- Criação da var DataSource para receber o StudentData
- Criação do método ApplyFilter que recebe os dados do input vindos do html via $event
- Criação da rota vazia para direcionamento da pagina de login
- Criação do formulário de login
- Criação dos validators do formulário
- Criação método de login
- Criação formulário de cadastro
- Criação dos validators de cadastro
- Criação do método cadastro
- Injeção de dependência no componente de registro
- Inscrição no student
- Importação de snackbar
- Importação router para navegar até pagina de login