0

我知道如何设置一些粗体文本,如下所示。

<Text>I am<Text style={{fontWeight:bold}}>a developer</Text></Text>

但我需要如何使用道具。

例子,

  <FlatList
          data={[{
            title: 'I am<Text style={styles.bold}>a developer</Text>',
            key: 'item1',
            id: 1
          }]}
          extraData={this.state}
          renderItem={this._renderItem}
        />

FlatList 中的标题在 _renderItem 中使用。

<Text>this.props.title</Text>

但它显示在设备的屏幕上,如下所示。

I am<Text style={styles.bold}>a developer</Text>

props 中的标题仅呈现为字符串。

4

1 回答 1

1

我想您应该将 jsx 传递给 title prop:

title: {<Text>I am <Text style={{fontWeight:bold}}>a developer</Text></Text>}

编辑:如果这不起作用,您可以将您的标题分成 2 个道具:

<FlatList
    data={[{
      title: 'I am',
      titleBold: 'a developer'
      key: 'item1',
      id: 1
    }]}
    extraData={this.state}
    renderItem={this._renderItem}
 />

然后在 _renderItem 中像这样显示它:

<Text>{this.props.title}<Text style={styles.bold}>{this.props.titleBold}</Text></Text>
于 2018-01-24T08:59:02.627 回答