Quiero insertar una nueva línea (como \ r \ n, <br />) en un componente de texto en React Native.
Si tengo:
<text><br />
Hi~<br >
this is a test message.<br />
</text>
Luego reacciona renderizaciones nativas Hi~ this is a test message.
¿Es posible renderizar texto para agregar una nueva línea así:
Hi~
this is a test message.
javascript
text
react-native
newline
Curtis
fuente
fuente
\n
donde quieras romper la línea.Respuestas:
Esto debería hacerlo:
fuente
<Text>{content}</Text>
:?var Br = React.createClass({ render() { return ( <Text> {"\n"}{"\n"} </Text> ) } })
<Text>{comments}</Text>
No podemos usar la{\n}
lógica allí. ¿Entonces como?<Component text={"Line1\nLine2"} />
lugar de<Component text="Line1\nLine2" />
(observe las llaves añadidas)También puedes hacer:
Más fácil en mi opinión, porque no tienes que insertar cosas dentro de la cadena; solo envuélvelo una vez y mantendrá todos tus saltos de línea.
fuente
white-space: pre-line;
Utilizar:
Resultado:
fuente
Esto funciono para mi
(reaccionar nativo 0.41.0)
fuente
Si está mostrando datos de variables de estado, use esto.
fuente
Puedes usar
{'\n'}
como saltos de línea. Hola ~ {'\ n'} este es un mensaje de prueba.fuente
Mejor aún: si lo usa
styled-components
, puede hacer algo como esto:fuente
Puedes intentar usarlo así
fuente
Necesitaba una solución de una línea ramificada en un operador ternario para mantener mi código bien sangrado.
El resaltado de sintaxis sublime ayuda a resaltar el carácter de salto de línea:
fuente
Puedes usar `` así:
fuente
Puedes hacerlo de la siguiente manera:
{'Crear \ nSu cuenta'}
fuente
También puede agregarlo como una constante en su método de renderizado para que sea fácil de reutilizar:
fuente
Simplemente colóquelo
{'\n'}
dentro de la etiqueta de textofuente
Una de las formas más limpias y flexibles sería usar Template Literals .
Una ventaja de usar esto es que, si desea mostrar el contenido de la variable de cadena en el cuerpo del texto, es más limpio y directo.
(Tenga en cuenta el uso de caracteres de retroceso)
Resultaría en
fuente
En caso de que alguien esté buscando una solución en la que desee tener una nueva línea para cada cadena en una matriz, puede hacer algo como esto:
Vea la merienda para ver un ejemplo en vivo: https://snack.expo.io/@cmacdonnacha/react-native-new-break-line-example
fuente
Simplemente use {"\ n"} donde quiera romper la línea
fuente
Otra forma de insertar
<br>
entre líneas de texto que se definen en una matriz:Entonces el texto puede usarse como variable:
Si no está disponible,
Fragment
se puede definir de esta manera:fuente
https://stackoverflow.com/a/44845810/10480776 La respuesta de @Edison D'souza fue exactamente lo que estaba buscando. Sin embargo, solo estaba reemplazando la primera aparición de la cadena. Aquí estaba mi solución para manejar múltiples
<br/>
etiquetas:Lo sentimos, no pude comentar sobre su publicación debido a la limitación de puntaje de reputación.
fuente
Aquí hay una solución para React (no React Native) usando TypeScript.
El mismo concepto se puede aplicar a React Native
Uso:
Muestra:
fuente
Uso
\n
en texto y CSSwhite-space: pre-wrap;
fuente
whiteSpace
lista como React Native Text Style Prop . Tenga en cuenta que esto no es HTML.