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((_) {
      // 进行赋值操作
});
相关推荐
maaath1 小时前
【maaath】Flutter for OpenHarmony 实战:旅游攻略应用开发指南
flutter·华为·harmonyos
jiejiejiejie_1 小时前
Flutter for OpenHarmony 跨平台开发:计算器功能实战指南
flutter
jiejiejiejie_2 小时前
Flutter for OpenHarmony 交互体验实战合集:底部导航优化 + 萌系用户反馈全攻略
flutter
liulian09163 小时前
Flutter for OpenHarmony 跨平台开发:番茄钟功能实战指南
flutter
liulian09164 小时前
Flutter for OpenHarmony 效率工具开发实战:我实现的番茄钟与倒计时功能总结
flutter
jiejiejiejie_5 小时前
Flutter for OpenHarmony 跨平台开发:待办事项功能实战指南
flutter
maaath6 小时前
【maaath】Flutter for OpenHarmony 实战:电影榜单应用开发指南
flutter·华为·harmonyos
xmdy58669 小时前
Flutter+开源鸿蒙实战|智安盾电商溯源平台Day6 登录逻辑+积分体系+全局收尾优化
flutter·华为·harmonyos
liulian09169 小时前
Flutter for OpenHarmony 工具类应用实战总结:计算器 + 记事本功能开发全解析
flutter
911hzh11 小时前
Flutter WebRTC iOS 原理解析:从 getUserMedia 到 Texture,讲清视频采集、纹理渲染与远端通话链路
flutter·ios·webrtc