1
resposta

[Sugestão] Tentei uma solução diferente da proposta.

Em vez de adicionar a tarefa no metoto "forEach", eu adicionei dentro da função "criarElementoTarefa", não ocasionando o bug no espaçamento dos itens.

script-crud.js

function criarElementoTarefa(tarefa){
    const li = document.createElement('li')
    li.classList.add('app__section-task-list-item');

    const svg = document.createElement('svg');
    svg.innerHTML = `
        <svg class="app__section-task-icon-status" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
            <circle cx="12" cy="12" r="12" fill="#FFF"></circle>
            <path d="M9 16.1719L19.5938 5.57812L21 6.98438L9 18.9844L3.42188 13.4062L4.82812 12L9 16.1719Z" fill="#01080E"></path>
        </svg>
    `

    const paragrafo = document.createElement('p');
    paragrafo.classList.add('app__section-task-list-item-description');
    paragrafo.textContent = tarefa.descricao;

    const botao = document.createElement('button');
    botao.classList.add('app_button-edit');

    const imagemBotao = document.createElement('img');
    imagemBotao.setAttribute('src', '/imagens/edit.png');
    botao.append(imagemBotao);
    
    li.append(svg);
    li.append(paragrafo);
    li.append(botao);
    
    //Adicionando o elemento "li" a lista de tarefas
    ulTarefas.append(li);
}

//Metodo "forEach" alterado
tarefas.forEach(tarefa => {
    criarElementoTarefa(tarefa)
})

1 resposta

Olá, Lorenzo! Tudo bem?

Que bacana que você encontrou uma solução alternativa para o problema do espaçamento dos itens! A sua abordagem de adicionar o elemento "li" diretamente na função criarElementoTarefa é uma maneira eficaz de evitar esse bug.

A diferença principal entre a sua solução e a proposta original é que, na sua abordagem, a responsabilidade de adicionar o elemento ao DOM está dentro da própria função que cria o elemento. Ambas as abordagens têm seus méritos, e a escolha entre uma ou outra pode depender do contexto e das preferências pessoais. Se a sua solução está funcionando bem e resolve o problema de espaçamento, isso é ótimo!

Agradecemos muito por compartilhar essa sugestão aqui para que outros estudantes possam se inspirar.

Conte sempre com o apoio do fórum :)

Um abraço e bons estudos!