You need to enable JavaScript to run this app. React Native FlatList组件不渲染用户列表项问题排查求助
优惠活动
大模型
产品
解决方案
定价
更多

React Native FlatList组件不渲染用户列表项问题排查求助

问题原因排查及修复方案
  • 核心错误:ListItem组件的标题属性拼写错误,你代码中写的是tittle,正确属性名为title,属性名不匹配导致列表项的姓名文本无法正常渲染。
  • 潜在问题1:包裹FlatList的外层View未设置flex: 1,React Native中滚动类组件的父容器如果没有明确占据可用空间,会导致滚动组件无法正常渲染内容。
  • 潜在问题2:检查当前页面是否已经正确导入你定义的用户数据源users,如果未导入,FlatList的data属性为undefined,不会渲染任何列表项。

修复后代码示例

// 首先确认顶部已经导入users数据源,替换为你实际的文件路径
import users from './userData'

export default props => {
    function getActions(user) {
        return (
            <>
                <Button
                    onPress={() => props.navigation.navigate('UserForm', user)}
                    type='clear'
                    icon={<Icon name='edit' size={25} color='orange' />}
                />
            </>
        )
    }

    function getUserItem({ item: user }) {
        return (
            <ListItem
                leftAvatar={{ source: { uri: user.avatarUrl } }}
                key={user.id}
                // 修正拼写错误:tittle改为title
                title={user.name}
                subtitle={user.email}
                bottomDivider
                rightElement={getActions(user)}
                onPress={() => props.navigation.navigate('UserForm', user)}
            />
        )

    }

    return (
        // 给外层View添加flex:1确保占满可用空间
        <View style={{flex: 1}}>
            <FlatList
                keyExtractor={user => user.id.toString()}
                data={users}
                renderItem={getUserItem}
            />
        </View>
    )
};

内容的提问来源于stack exchange,提问作者User007

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 00:15:03