微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我们需要在 React Native 中的 FlatList 的 renderItem() 方法中使用大括号

如何解决为什么我们需要在 React Native 中的 FlatList 的 renderItem() 方法中使用大括号

我不确定为什么我们需要在 item 之外为以下代码片段中的 renderItem 使用大括号,而对于 keyExtractor 则没有大括号。我想这与对象解构有关,但是这里的 item 指的是什么? friends对象中没有名为“item”的字段,怎么可能是对象解构?

import React from 'react';
import {View,Text,StyleSheet,FlatList}  from "react-native";

const ListScreen = () => {
    const friends = [
        {name: "friend #1"},{name: "friend #2"},{name: "friend #3"},{name: "friend #4"},{name: "friend #5"},];

    return (
        <View>
            <Text>This is the ListScreen Component</Text>
            <FlatList
                keyExtractor={(friend) => friend.name}
                data={friends}
                renderItem={({item}) => {
                    return <Text>{item.name}</Text>
                }}
            />
        </View>
    );
}

解决方法

传递给 renderItem 的参数是表单的对象

{ item,index,separators }

大括号允许您解构参数并直接访问 item 字段。

签名由 FlatList 组件的实现定义。如果你想看看它是什么样子,你可以在 React Native 存储库中找到它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。