Quero inserir uma nova linha (como \ r \ n, <br />) em um componente de texto no React Native.
Se eu tiver:
<text><br />
Hi~<br >
this is a test message.<br />
</text>
Em seguida, Reagir renderizações nativas Hi~ this is a test message.
É possível renderizar texto para adicionar uma nova linha assim:
Hi~
this is a test message.
javascript
text
react-native
newline
Curtis
fonte
fonte
\n
onde deseja quebrar a linha.Respostas:
Isso deve servir:
fonte
<Text>{content}</Text>
:?var Br = React.createClass({ render() { return ( <Text> {"\n"}{"\n"} </Text> ) } })
<Text>{comments}</Text>
Não podemos usar a{\n}
lógica lá. Então como?<Component text={"Line1\nLine2"} />
vez de<Component text="Line1\nLine2" />
(observe as chaves adicionadas)Você também pode fazer:
Mais fácil na minha opinião, porque você não precisa inserir coisas na string; basta envolvê-lo uma vez e ele mantém todas as quebras de linha.
fonte
white-space: pre-line;
Usar:
Resultado:
fonte
Isso funcionou para mim
(reagir nativo 0.41.0)
fonte
Se você estiver exibindo dados de variáveis de estado, use-o.
fonte
Você pode usar
{'\n'}
como quebras de linha. Olá ~ {'\ n'} esta é uma mensagem de teste.fonte
Melhor ainda: se você usar
styled-components
, poderá fazer algo assim:fonte
Você pode tentar usar assim
fonte
Eu precisava de uma solução de uma linha ramificada em um operador ternário para manter meu código bem recuado.
O destaque sublinhado da sintaxe ajuda a destacar o caractere de quebra de linha:
fonte
Você pode usar `` assim:
fonte
Você pode fazer o seguinte:
{'Crie \ nSua Conta'}
fonte
Você também pode adicioná-lo como uma constante no seu método de renderização para facilitar a reutilização:
fonte
Basta colocar
{'\n'}
dentro da tag Textfonte
Uma das maneiras mais limpas e flexíveis seria usar Literais de Modelo .
Uma vantagem de usar isso é que, se você deseja exibir o conteúdo da variável string no corpo do texto, é mais limpo e direto.
(Observe o uso de caracteres backtick)
Resultaria em
fonte
Caso alguém esteja procurando uma solução em que você queira ter uma nova linha para cada string em uma matriz, você pode fazer algo assim:
Veja o lanche para um exemplo ao vivo: https://snack.expo.io/@cmacdonnacha/react-native-new-break-line-example
fonte
Basta usar {"\ n"} onde deseja quebrar a linha
fonte
Outra maneira de inserir
<br>
entre as linhas de texto definidas em uma matriz:Então o texto pode ser usado como variável:
Se não estiver disponível,
Fragment
pode ser definido desta maneira:fonte
https://stackoverflow.com/a/44845810/10480776 A resposta de @Edison D'souza era exatamente o que eu estava procurando. No entanto, estava substituindo apenas a primeira ocorrência da sequência. Aqui estava minha solução para lidar com várias
<br/>
tags:Desculpe, não pude comentar sua postagem devido à limitação de pontuação na reputação.
fonte
Aqui está uma solução para o React (não o React Native) usando o TypeScript.
O mesmo conceito pode ser aplicado ao React Native
Uso:
Exibe:
fonte
Use
\n
em texto e csswhite-space: pre-wrap;
fonte
whiteSpace
lista como Prop React Native Text Style . Observe que isso não é HTML.