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((_) {
      // 进行赋值操作
});
相关推荐
莞凰10 小时前
昇腾CANN的“御剑飞行“:ATB仓库探秘
人工智能·flutter·transformer
QQ34634815712 小时前
Flutter_01 工具准备1
flutter
QQ34634815720 小时前
Flutter_02 工具准备2-2
flutter
淡写成灰21 小时前
造一个生产级 Flutter WebSocket 客户端:适配器模式 + 七大企业特性全解析
flutter
水云桐程序员1 天前
Flutter与React Native的对比分析
flutter·react native·react.js
1001101_QIA1 天前
android studio连接手机真机调试
flutter
莞凰1 天前
昇腾CANN的“传音入密“:hccl仓库探秘
flutter·ui·transformer
500841 天前
Conv + BN + ReLU 融合:省掉两次显存读写
flutter·架构·开源·wpf·音视频
500841 天前
把 FlashAttention 讲清楚
flutter·electron·wpf
song5012 天前
多卡训练加速:HCCL 集合通信实战
分布式·python·flutter·ci/cd·分类