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

187
Visualizações
¿Crear objetos usando la última parte de una cadena?

Estoy creando una aplicación de reacción que toma la entrada de texto y la genera en objetos de 280 caracteres (del tamaño de un tweet), esencialmente dividiéndola en un gran hilo de Twitter.

No sé cómo dividirlos en estos objetos de 280 caracteres y seguir actualizando la lista de objetos (tweets) mientras escribo en el cuadro de texto.

Cualquier ayuda sería apreciada.

 const [content, setContent] = useState(""); const [tweets, setTweets] = useState([ { text: "First tweet.", id: 1 }, ]);
 let remainder = content.length - ~~(content.length / 10) * 10; let prevTweetsLength = content.length - remainder; const contentHandler = (e) => { setContent(e.target.value); tweetHandler(content); console.log(content); }; const tweetHandler = (c) => { tweets[prevTweetsLength / 10] = { text: c, id: tweets.length + 1, }; if (remainder === 1) { setTweets([ ...tweets, { text: c.substring((prevTweetsLength)), id: Math.random() * 1000, }, ]); } };```
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Primero, podemos definir una función que dividirá un texto en tweets, usando slice(start, end) que devuelve el contenido entre la posición de inicio y la posición final.

 function splitIntoTweets(content, tweetLength = 280) { const nTweets = content.length / tweetLength; const tweets = []; for (let i = 0; i < nTweets; i++) { tweets.push({ text: content.slice(i * tweetLength, (i + 1) * tweetLength), id: i, }); } return tweets; }

Luego, dentro de sus componentes, podría hacer:

 const [content, setContent] = useState(""); const [tweets, setTweets] = useState([]); // Every time content changes, we update the list of tweets. useEffect(() => { setTweets(splitIntoTweets(content)); }, [content]) // Rest of your code ...
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