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

Entendimento do join na view

Mesmo já lendo a resposta do Jonilson Sousa em um post anterior, eu ainda estou com dificuldade em visualizar o comportamento dos dados em um array ou na forma concatenada em string's.

${model.negociacoes.map((n) => { return <tr> <td>${DateHelper.dataParaTexto(n.data)}</td> <td>${n.quantidade}</td> <td>${n.valor}</td> <td>${n.volume}</td> <tr> }).join('')}

Agradeço desde já.

5 respostas

Fala ai Glauber, tudo bem? Quais seriam suas dificuldades? Consegue me mandar alguns pontos de dúvidas e perguntas? Assim eu consigo responder mais direto as suas necessidades e entender o que não ficou claro para você.

Fico no aguardo.

Blz Matheus Castiglioni, tudo bem? Eu entendi que quando se usa o map ele retorna um array, no entanto não consegui entender porque teve que concatenar tudo em uma string e porque isso foi tão importante.

Espero ter sido mais direto.

Valeu, muito obrigado. Até mais!!!

solução!

Fala ai Glauber, vamos lá:

no entanto não consegui entender porque teve que concatenar tudo em uma string e porque isso foi tão importante.

Isso é importante para que no seu HTML não tenha vírgulas aleatórias, isso porque quando existe um array dentro de uma template string no final será chamada a função toString do array.

Por padrão essa função vai separar cada item com uma vírgula, exemplo:

const numeros = [1,2,3]
console.log(`${numeros}`) // será impresso 1,2,3

Mas, a gente não quer essas vírgulas soltas no HTML, então, realizando o join conseguimos converter o array para string e remover esse separador (vírgula)

const numeros = [1,2,3]
console.log(`${numeros.join('')}`) // será impresso 123

Isso porque como primeiro parâmetro para a função join a gente passou uma string fazia, nesse caso, cada vírgula será substituída pela string vazia.

Espero ter ajudado.

Show, agora consegui entender.

Muito Obrigado Matheus Castiglioni.

Ajudou bastante

Magina Glauber, sempre que precisar não deixe de criar suas dúvidas.

Abraços e bons estudos.