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((_) {
      // 进行赋值操作
});
相关推荐
Python私教5 小时前
Flutter颜色和主题
开发语言·javascript·flutter
Python私教8 小时前
Flutter主题最佳实践
前端·javascript·flutter
小蜜蜂嗡嗡20 小时前
【flutter列表播放器】
flutter
AiFlutter20 小时前
Flutter Web部署到子路径的打包指令
flutter
有趣的杰克20 小时前
Flutter InkWell组件去掉灰色遮罩
开发语言·javascript·flutter
Python私教20 小时前
Flutter动画容器
flutter
wills7771 天前
Flutter 状态管理框架Get
flutter·react native
阳仔_1001 天前
动态下发字体技术方案
flutter
Rudy10211 天前
分享我在flutter中使用的MVVM框架 - 2
前端·flutter
恋猫de小郭2 天前
什么?Flutter 又要凉了? Flock 是什么东西?
flutter