Flutter控制台提示setState() or markNeedsBuild() called during build错误

前言

当我在initState函数中对Provider进行赋值时,此时会出现setState() or markNeedsBuild() called during build.的错误

解决办法

使用WidgetsBinding.instance.addPostFrameCallback来解决这个问题。

注意:不要使用addPersistentFrameCallback,每一帧绘制完成后都会执行addPersistentFrameCallback

addPostFrameCallback 确保在当前帧绘制完成后再执行赋值操作。这样可以避免在 build 过程中调用 setState 导致的错误。

复制代码
WidgetsBinding.instance.addPostFrameCallback((_) {
      // 进行赋值操作
});
相关推荐
向哆哆3 分钟前
Flutter × OpenHarmony 跨端实战:打造“智能垃圾分类助手”的快速分类入口模块
flutter·开源·鸿蒙·openharmony
时光慢煮4 分钟前
构建跨端驾照学习助手:Flutter × OpenHarmony 的用户信息与驾照状态卡片实现
学习·flutter·开源·openharmony
向哆哆9 分钟前
Flutter × OpenHarmony 跨端实战:垃圾分类应用顶部横幅组件的设计与实现
flutter·鸿蒙·openharmony·开源鸿蒙
微祎_11 分钟前
Flutter for OpenHarmony:构建一个专业级 Flutter 番茄钟,深入解析状态机、定时器管理与专注力工具设计
开发语言·javascript·flutter
一起养小猫11 分钟前
Flutter for OpenHarmony多媒体功能开发完全指南
数码相机·flutter
嘴贱欠吻!1 小时前
Flutter鸿蒙开发指南(八):获取轮播图数据
flutter
晚霞的不甘1 小时前
Flutter for OpenHarmony《智慧字典》英语学习模块代码深度解析:从数据模型到交互体验
前端·学习·flutter·搜索引擎·前端框架·交互
子春一1 小时前
Flutter for OpenHarmony:构建一个优雅的 Flutter 每日一句应用,深入解析状态管理、日期驱动内容与 Material 3 交互动效
javascript·flutter·交互
菜鸟小芯1 小时前
【开源鸿蒙跨平台开发先锋训练营】DAY8~DAY13 底部选项卡&美食功能实现
flutter·harmonyos
子春一1 小时前
Flutter for OpenHarmony:构建一个沉浸式 Flutter 掷骰子游戏,深入解析动画控制器、CustomPaint 自定义绘制与状态同步
flutter·游戏