2
respostas

sem o constructor

apaguei o constructor(){ super() this.titulo = ''; this.texto = ''; } e continua funcionado normalmente :) o constructor é opcional?

2 respostas

Olá, Lorena, tudo bem?

Nesse caso, na prática não haveria problema em tirar o construtor, porque as propriedades titulo e texto iniciam como strings vazias. E assim que o usuário digita nos campos, elas são atualizadas conforme o que foi digitado.

Ainda assim, não é uma boa prática tirá-las do construtor, porque senão elas não existirão até que o usuário digite algo nos campos. Ao declarar essas propriedades no construtor, ganhamos duas vantagens:

  1. As propriedades são inicializadas (mesmo que sejam strings vazias), em vez de não existirem e recebermos um undefined antes delas serem definidas;
  2. Quando abrimos aquele componente, já sabemos de cara que ele tem aquelas propriedades, aumentando a legibilidade do código. Quando vermos um código como this.texto = event.target.value;, já sabemos a que ele está se referindo.

Esses problemas se acentuam principalmente quando vamos trabalhar com o Typescript, que é bem mais rígido em relação a definição de variáveis.

Espero ter ajudado! Abraços e bons estudos :)

Ajudo! Ainda esta um pouco complexo pra mim mas continuo estudando. Obrigada!