You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native中ExpenseContext无法在目标页面生效报错如何解决

问题原因&解决方案

1. 报错直接原因:组件名拼写错误

React Native 官方提供的列表组件名为FlatList(首字母F和L均为大写),你在ExpenseScreen中导入和使用时都写成了小写L的Flatlist,导致导入的组件值为undefined,触发你看到的类型错误。
修改方案:将ExpenseScreen的相关代码调整即可:

// 导入时修改为大写L的FlatList
import { Text, StyleSheet, View, Button, FlatList } from "react-native";

// 使用处也对应修改
<FlatList
  data={expensePosts}
  keyExtractor={(expensePost) => expensePost.title}
  renderItem={({item}) => {
    return <Text>{item.title}</Text>
  }}
/>

2. Context作用域问题解答

你当前的ExpenseProvider包裹了整个导航容器组件,所有注册在导航栈内的页面(HomeScreen、ExpenseScreen、BalanceScreen)都在Provider的作用域内,都可以正常访问Context值,不会仅对HomeScreen生效,这部分配置没有问题。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 21:00:05