gpt4 book ai didi

react-native - 我可以在平面列表中使用 ItemSeparatorComponent 中的组件吗?

转载 作者:行者123 更新时间:2023-12-05 04:01:54 27 4
gpt4 key购买 nike

我在想怎么用ItemSeparatorComponent在平面列表中

如果我使用它会起作用:

import Seperator from '../Seperator';

<FlatList
ItemSeparatorComponent={() => <Seperator />}
data={this.props.x}
renderItem={({ item }) => this.renderX(item)}
/>

我可以只使用 <Seperator /> 吗?像下面这样?

import Seperator from '../Seperator';

<FlatList
ItemSeparatorComponent={ <Seperator />}
data={this.props.x}
renderItem={({ item }) => this.renderX(item)}
/>

没用!为什么?

最佳答案

原因() => <Separator />作品和<Separator />不是因为ItemSeparatorComponent需要一个呈现元素的函数,而不是元素本身。

这是因为您指定为分隔符的组件会在填充列表时动态呈现,而不是就地呈现(这是 <Component /> 语法的作用)。

在您的工作示例中,您使用的是 () => <Separator /> .除非您使用的是类组件,否则这是多余的,因为您的代码在这种情况下所做的只是创建一个匿名函数,然后呈现您的组件。如果您使用的是无状态功能组件(人们希望它只是一个分隔符),您可以将其写为 ItemSeparatorComponent={Separator}

关于react-native - 我可以在平面列表中使用 ItemSeparatorComponent 中的组件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54901691/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com