Questo è prevedibile, si avrebbe bisogno di convertire i caratteri nuova riga (\ n) per linea di codice HTML interruzioni
Un articolo su come utilizzare in reagiscono: https://medium.com/@kevinsimper/react-newline-to-break-nl2br-a1c240ba746#.l9sbqp5aw
Per citare l'articolo:
Perché si sa che tutto in Reagire è funzioni, non si può davvero fare questo
this.state.text.replace(/(?:\r\n|\r|\n)/g, '<br />')
si nce che restituirebbe una stringa con nodi DOM all'interno, che non è consentita, perché deve essere solo una stringa.
È quindi possibile provare fare qualcosa di simile:
{this.props.section.text.split(“\n”).map(function(item) {
return (
{item}
<br/>
)
})}
non consentito o perché ancora una volta è Reagire funzioni pure e due le funzioni possono essere uno accanto all'altro.
tldr. Soluzione
{this.props.section.text.split(“\n”).map(function(item) {
return (
<span>
{item}
<br/>
</span>
)
})}
Ora stiamo avvolgendo ogni linea-break in un arco, e che funziona bene perché arco offre visualizzazione in linea. Ora abbiamo una soluzione nl2br line-break funzionante
fonte
2016-03-28 10:09:48
Penso che questa dovrebbe essere la risposta accettata – bpercevic
soluzione migliore e più semplice! – beydogan
Funziona in diversi modi: se si tenta di eseguire il rendering di un'interruzione di riga (
) in JSX tramite una variabile, renderà "sicuro" il markup anziché aggiungere l'interruzione di riga. Usare i caratteri di escape con questo CSS aggira il meccanismo di sicurezza e risolve il problema dichiarato. – bvoyelr