Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Duvida no FormularioCadastro.jsx

Boa noite, surgiu essa duvida, os metodos estao na pag do componente Formulario cadastro.

Pq no metodo componentDidMount usamo -> this.props.categoriass.inscricao(this._categorysDate.bind(this)). pra chamar as propiedade da fonte de dados (Categorias.js) e no metodo _criarNotas usamos apenas -> this.props.createNote(this.title, this.text, this.category); sem chamar o objetp Notas?

3 respostas

fala Thiago, tudo certo?

Então, não sei se entendi bem a pergunta, você perguntou o por quê de não utilizar o objeto notas no _criarNotas?

Caso seja isto, é porque o _criarNotas tem objetivo de criar uma nota, então ele não precisa dos dados das notas, apenas adicionar mais uma nota ao conjunto de notas!

E no caso do componentDidMount, ele se inscreve no this.props.categorias.inscrever pois ele precisa saber quando tem uma categoria nova, pois sempre que uma categoria nova é criada, ele precisa atualizar as opções de seleção de categorias, mas para ele não faria diferença se existisse uma nota nova pois ele não precisa atualizar nada no formulário, entendeu?

Caso não tenha entendido ou queira fazer outra pergunta sinta-se a vontade para continuar este tópico ou criar outro!

Bons estudos!

boa tarde Luiz, td certo. Desde já obrigado pela ajuda, a duvida na vdd é

pq usamo this.props.createNote e não this.props.notas.createNote,

_createNote(evento) { evento.preventDefault(); evento.stopPropagation(); ** this.props.createNote(this.title, this.text, this.category)**;

}
solução!

Isto é usado pois o na hora de renderizar o FormulárioCadastro é passado a função diretamente pra ele:

<FormularioCadastro
  categorias={this.categorias}
  criarNota={this.notas.adicionarNota.bind(this.notas)}
/>

Isto é considerado uma boa prática, pois o formulário cadastro não precisa saber quantas notas tem ou quais são elas, ela só precisa saber qual função executar quando criar uma nota, então, por exemplo, a mudança de uma nova não influenciaria na renderização do FormulárioCadastro (e nem precisaria).