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((_) {
      // 进行赋值操作
});
相关推荐
G_dou_12 小时前
Flutter+OpenHarmony 实战:stopwatch 秒表应用
flutter·harmonyos
hxy060112 小时前
Flutter 定时器相关
flutter
G_dou_12 小时前
Flutter三方库适配OpenHarmony【compass】罗盘 UI 项目完整实战
flutter·ui
G_dou_14 小时前
Flutter +OpenHarmony 实战:clock 时钟应用
flutter·harmonyos
G_dou_14 小时前
Flutter+OpenHarmony 实战:weather 天气查询应用
flutter·harmonyos
韩曙亮15 小时前
【错误记录】flutter pub get 执行报错 ( 打开 Windows 开发者模式 )
windows·flutter
G_dou_17 小时前
Flutter+OpenHarmony实战:flashlight】手电筒项目
flutter·harmonyos
坚果的博客18 小时前
Flutter OHOS SDK 版本目录校验 Bug 修复实战
flutter·bug
坚果的博客18 小时前
Flutter 开发鸿蒙 6 应用,祝贺六一儿童节 [特殊字符]
flutter·华为·harmonyos
jingling55518 小时前
Flutter | 从基本跳转到路由守卫
服务器·前端·网络·flutter·前端框架