我想在React Native的文本组件中插入一个新行(如\r\n, <br />)。

如果我有:

<text>
<br />
Hi~<br />
this is a test message.<br />
</text>

然后React Native渲染Hi~这是一个测试消息。

它是可能的渲染文本添加一个新的行像这样:

Hi~
this is a test message.

当前回答

你也可以把它作为一个常量添加到你的渲染方法中,这样很容易重用:

  render() {
    const br = `\n`;
     return (
        <Text>Capital Street{br}Cambridge{br}CB11 5XE{br}United Kingdom</Text>
     )  
  }

其他回答

这应该做到:

<Text>
Hi~{"\n"}
this is a test message.
</Text>

你还可以:

<Text>{`
Hi~
this is a test message.
`}</Text>

在我看来更简单,因为你不需要在字符串中插入东西;只要换行一次,就能保留所有换行符。

简单使用反勾号(es6特性)

解决方案1

const Message = 'This is a message';

<Text>
{`
  Hi~
  ${Message}
`}
</Text>

解决方案2在文本中添加“\n”

<Text>
Hi~{"\n"}
This is a message.
</Text>

你可以像这样使用' ':

<Text>{`Hi~
this is a test message.`}</Text>

这应该可以做到!

<Text style={{styles.text}}>{`Hi~\nthis is a test message.`}</Text>