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

Outra maneira de criar um elemento

Segui o curso tentando criar a funcionalidade de adicionar o item na lista antes de ver o vídeo e cheguei no código abaixo

    var item = document.createElement('li');
    item.textContent= valor;
    item.setAttribute('class','exemplo')
   var lista =document.querySelector('.lista');
   lista.appendChild(item);
    //limpando input
    input.value ="";

Gostaria de saber se há alguma diferença significativa entre o código do video ou este.

Obrigado

3 respostas
solução!

Ricardo, boa tarde!

O resultado vai acabar sendo o mesmo, o que você pode precisar ficar de olho é que, a variável valor precisa ser uma tag p correto? Sendo assim que vc precisa se certificar que ele sempre vai ser essa tag p. Da forma que o instrutor passou, pela tag estar hardcoded, ou seja, fixa no código, vc sabe que sempre vai ser, no caso de usar uma variável, pode ser que não seja, então seria interessante fazer uma verificação. Mas de todo o resto o resultado vai ser o mesmo!

Eu espero ter ajudado e bons estudos!

Obrigado Felipe!!

Entendi melhor o que muda!

Eu pensei nesta situação e fiquei na dúvida se é um jeito errado, já que vejo quase todos os tutoriais utilizando o CreateElement.

Neste caso eu utilizei o insertAdjacentHTML('afterbegin', task);

Tem algo errado em utilizar a função insertAdjacentHTML?

let templateTask = (conteudo) => {
    const template = `<li class="task" data-task>
                                <p class="content" data-list-content>
                                    ${conteudo}
                                </p>
                            </li>`;
    return template
}
    let task = templateTask(inputNovaTarefa);

    minhaListaDeTarefa.insertAdjacentHTML('afterbegin', task)