Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

95
Visualizações
Dynamically create divs and add to DOM based on array retrieved through Axios API

I would like to iteratively create divs using an array I retrieved through axios.

I would like each array element to be represented by a different div such that the array

['one','two','three']

Would return

<div class="parent">
    <div class="one">one</div>
    <div class="one">two</div>
    <div class="one">three</div>
</div>

This is what I have written

//call back function
function creatingDiv (input) {
  return Object.assign(document.createElement('div'), {className: 'tab', textContent: input});
}

const tabTopics = (topics) => {
  const divTopics = Object.assign(document.createElement('div'), {className: 'topics'});
  divTopics.appendChild(topics);
  return divTopics
}
const cssSelector = document.querySelector('.parent')
axios.get('http://localhost:5000/api/topics')
  .then((resp) => {
    const topicsData = tabTopics(creatingDiv(resp.data.topics))
    cssSelector.appendChild(topicsData)
})

This is the structure of data in my url

{"topics":["javascript","bootstrap","technology","jquery","node.js"]}

My solution returns one div with each element comma separated.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Can you try this way? Because the data you receive is transmitted to the function as an array, but the working structure was not suitable for array.

function creatingDiv(input) {
  const divArr = []
  for (let i = 0; i < input.length; i++) {
    divArr.push(Object.assign(document.createElement('div'), {
      className: input[i],
      textContent: input[i]
    }))
  }
  return divArr
}

const tabTopics = (topics) => {
  const divTopics = Object.assign(document.createElement('div'), {
    className: 'topics'
  });
  for (let i = 0; i < topics.length; i++) {
    divTopics.appendChild(topics[i]);
  }

  return divTopics
}
const cssSelector = document.querySelector('.parent')

axios.get('http://localhost:5000/api/topics')
  .then((resp) => {
    const topicsData = tabTopics(creatingDiv(resp.data.topics))
    cssSelector.appendChild(topicsData)
  })
<div class="parent"></div>

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda