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

Duvida Sobre não percorrer o DOM varias vezes

O professor deu o exemplo para criarmos um construtor para não percorremos o DOM varias vezes

class NegociacaoController {

  adiciona(event) {
        event.preventDefault();

        let $ = document.querySelector.bind(document);
        let inputData = $('#data');
        let inputQuantidade =  $('#quantidade');
        let inputValor = $('#valor');

        console.log(inputData.value);
        console.log(inputQuantidade.value);
        console.log(inputValor.value);

  }
}

Então deixamos dessa forma para que possamos percorrer o DOM apenas uma única vez, mesmo se clicamos 300x em incluir.

  constructor() {

            let $ = document.querySelector.bind(document);

            this.inputData = $('#data');
            this.inputQuantidade =  $('#quantidade');
            this.inputValor = $('#valor');
  }

Minha duvida é a seguinte, toda vez que clicarmos em incluir teríamos que percorrer o DOM para para adicionar os valores necessários, então de toda forma estaremos percorrendo o DOM?

2 respostas
solução!

Olá Artur, tudo bem?

Na verdade não. O que acontece é que quando a classe NegociacaoController é inicializada o constructor vai buscar uma única vez as propriedades #data, #quantidade e #valor no DOM e armazenar esses valores, ai quando precisar, no caso chamando o método de adicionar(event), ele pega os valor guardados ali no constructor mesmo.

Espero ter ajudado Artur, bons estudos.

Entendi, muito obrigado!