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((_) {
      // 进行赋值操作
});
相关推荐
芙莉莲教你写代码6 小时前
Flutter 框架跨平台鸿蒙开发 - 科学实验指南应用
flutter·华为·harmonyos
不爱吃糖的程序媛6 小时前
Flutter鸿蒙PC应用开发实践:从零到运行
flutter·华为·harmonyos
芙莉莲教你写代码7 小时前
Flutter 框架跨平台鸿蒙开发 - 赛车游戏
flutter·游戏
芙莉莲教你写代码7 小时前
Flutter 框架跨平台鸿蒙开发 - 单位换算大师应用
flutter·华为·harmonyos
weixin_443478517 小时前
Flutter第三方常用组件包学习之状态管理
javascript·学习·flutter
九狼JIULANG7 小时前
【无标题】
android·flutter·开源·github
不爱吃糖的程序媛7 小时前
Flutter应用运行到鸿蒙PC指南
flutter·华为·harmonyos
不爱吃糖的程序媛7 小时前
Flutter OH Engine 构建指导(macOS 版本)
flutter·华为·harmonyos
芙莉莲教你写代码7 小时前
Flutter 框架跨平台鸿蒙开发 - 历史知识问答应用
flutter·华为·harmonyos
2501_9206276121 小时前
Flutter 框架跨平台鸿蒙开发 - 派对策划助手应用
flutter·华为·harmonyos