我试图格式化必须在<Text>上显示的数据。这是我的formatData()方法:

getFormattedData = (idA, idB) => {
    var formattedData = "";
    if (idA != null && idA != "") {
        formattedData = formattedData + "&#8226;" + " " + idA
    }
    if (idB != null && idB != "") {
        formattedData = formattedData + "&#8226;" + " " + idB
    }
    return formattedData;
};


但是,鉴于此,它呈现为ABC &#8226; DEF。而不是ABC • DEF

当我使用\u2B24时,项目符号很大,而当使用\2022时,仅显示代码。

如何使用渲染getFormattedData()

最佳答案

要解析HTML实体,可以使用npm模块html-entities

import { Html5Entities } from 'html-entities';

render() {
    const entities = new Html5Entities();
    return (
      <SafeAreaView style={styles.container}>
        <View>
        <Text> {entities.decode('&#8226;')} </Text>
        </View>
      </SafeAreaView>
    );
  }

07-26 08:57