You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter报错Expected a value of type 'Widget' but got type 'Null' 问题排查

问题根因
  • 你使用的路由构建回调要求返回Widget类型的对象,当前用大括号包裹的函数体没有显式加return关键字返回EditAccountRoot实例,Dart中这类无显式return的函数默认返回null,和要求的Widget类型不匹配,因此抛出报错。
两种修复方案

方案1:显式添加return语句

kEditAccountPage: (context, state) {
  Map<String, dynamic> userData = state.data;
  return EditAccountRoot(userData: userData);
},

方案2:改用箭头函数简写,自动返回表达式结果

kEditAccountPage: (context, state) => EditAccountRoot(userData: state.data as Map<String, dynamic>),

补充规则:Dart中只有箭头函数=> 表达式会自动将表达式的结果作为返回值返回,用{}包裹的函数体必须手动写return指定返回值,无return时默认返回null。

内容的提问来源于stack exchange,提问作者JLarana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 20:18:03