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

Flutter学习APP故障:答错Flipchart重复功能无法正常实现

排查答错题目列表(wrongQuestions)失效问题

1. 确认列表初始化与状态管理

  • 检查wrongQuestions是否在合适的位置初始化(比如State类的成员变量,或使用Provider/Cubit等状态管理时的初始状态),确保不会随页面重建被重置为空列表。
  • 如果当前用的是无状态组件,列表数据会随组件重建丢失,必须改用有状态组件或全局状态管理(比如Provider、Riverpod)存储wrongQuestions。

2. 验证答错题目添加逻辑

  • 检查标记错题的触发代码,确认用户点击“错误”按钮时,是否正确执行wrongQuestions.add(当前Flipchart对象),且没有被其他逻辑意外清空。
  • 确保添加的是完整的Flipchart对象,若对象为可变类型,避免后续修改影响已存入列表的内容。

3. 页面跳转时的状态传递

  • 从Flipchart页面跳转到概览页(Auswertung)时,确认wrongQuestions是否通过构造函数参数正确传递,或通过状态管理工具全局访问。
  • 导航跳转时避免创建新的空列表实例,示例代码:
    Navigator.push(
      context,
      MaterialPageRoute(
        builder: (context) => Auswertung(wrongQuestions: wrongQuestions), // 传递现有列表
      ),
    );
    

4. 概览页接收与使用列表

  • 在Auswertung类中,检查是否正确接收传入的wrongQuestions,示例代码:
    class Auswertung extends StatelessWidget {
      final List<Flipchart> wrongQuestions;
      const Auswertung({super.key, required this.wrongQuestions});
      // ...
    }
    
  • 渲染重复练习按钮时,确认绑定的数据源是wrongQuestions,而非空列表或其他错误数据。

5. 测试与调试建议

  • 在添加错题的代码处加入print(wrongQuestions.length),每次标记错误后打印列表长度,确认数据是否成功添加。
  • 使用Flutter DevTools的Inspector查看状态变量,跟踪wrongQuestions的变化,定位数据丢失的节点。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 21:45:33