Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Não entendi

Olá,

Houve um corte no vídeo aos 06'39'' onde o instrutor clica no journal_service.dart dizendo: "... pegar este processo que está acontecendo aqui..." depois corta dizendo: "... e vou botar aqui, date... " e logo em seguida corta novamente voltando a aparecer o código que imagino ter sido copiado de algum outro lugar. O que eu fiz para poder continuar foi digitar o código mesmo sem explicação devido aos cortes do vídeo. Poderiam me explicar o que ocorreu?

1 resposta
solução!

Oii Alvaro, tudo bem?

O instrutor estava trabalhando na refatoração do código, mais especificamente no arquivo journal_service.dart. A ideia era modularizar um código que estava sendo usado para formatar a data na AppBar(). Esse código estava sendo usado no arquivo add_journal_screen.dart e a intenção era mover esse código para o arquivo weekday.dart para que pudesse ser reutilizado em outras partes do código.

No arquivo weekday.dart, ele modificou a classe WeekDay para receber um objeto DateTime em vez de um inteiro representando o dia da semana. Assim, ele poderia usar essa classe para formatar a data completa, não apenas o dia da semana.

Depois disso, ele adicionou um método toString() na classe WeekDay que retorna a data formatada como uma string. Esse método utiliza as informações da data que foram passadas para a classe WeekDay para formatar a data.

Aqui está um exemplo do código final da classe WeekDay:

class WeekDay {
  DateTime date;
  late String short;
  late String long;

  WeekDay(this.date) {
    int weekday = date.weekday;
    switch (weekday) {
      //Código suprimido
    }
  }

  @override
  String toString() {
    return "${long.toLowerCase()}, ${date.day} | ${date.month} | ${date.year}";
  }
}

E aqui está um exemplo de como essa classe WeekDay pode ser usada para formatar a data na AppBar():

appBar: AppBar(
  title: Text(WeekDay(journal.createdAt).toString()),
  actions: [
    IconButton(
      onPressed: () {
        registerJournal(context);
      },
      icon: const Icon(Icons.check),
    ),
  ],
),

Espero que isso esclareça a parte do vídeo que foi cortada.

Um abraço e bons estudos.