首页 > 解决方案 > 反应原生替换\n

问题描述

我目前正在使用 React-native 开发一个项目,并且我对\n在屏幕内呈现的以下句子有疑问:

Geweldig pand op geweldige locatie!\n\nDat mag je daadwerkelijk zo stellen...\n\nOp loopafstand van de Nachtegaalstraat en de Biltstraat tref je dit werkelijk bijzondere pand aan.

正如您在句子中看到的那样\n,我知道 react-native 不能渲染\n,而是使用{"\n"}. 但是如何将其替换\n为断线?

这是我当前的代码:

renderDescription() {
    let text = this.state.huisExtraInfo.offerText;

    if (this.state.showDescription) {
        return (
            <View>
                <Text>
                    {text}
                </Text>
            </View>
        )
    } else {
        return (
            <View>
                <Text numberOfLines={3} style={styles.description}>{text}</Text>
                <Button onPress={() => this.setState({showDescription: true})}><Icon name='caret-down'/> Lees de volledige beschrijving</Button>
            </View>

        )
    }
}

我试过以下方法:
方法一:

text.replace(/\n/g, "{'\n'}");  

方法二:

{text.split(/\n/).map((item, key) => {
        return (
            <Text key={key}>
                {item} {"\n"}
            </Text>
            )
    })}

我尝试过的方法都不起作用,有什么建议吗?

图片供参考: 屏幕上的文字

标签: javascriptreact-native

解决方案


这对我有用

export default function App() {
  const text ="Geweldig pand op geweldige locatie!\n\nDat mag je daadwerkelijk zo stellen...\n\nOp loopafstand van de Nachtegaalstraat en de Biltstraat tref je dit werkelijk bijzondere pand aan.";
  return (
    <View style={styles.container}>
      <Text>Open up App.js to start working on your app!</Text>
      <Text>{text}</Text>
    </View>
  );
}

在此处输入图像描述

希望这可以帮助!


推荐阅读