Flutter项目中User类无法赋值Null的报错问题求助
问题解决:The argument type 'Null' can't be assigned to the parameter type 'User'
这个报错是Dart空安全机制导致的——在Dart 2.12及以上版本中,所有变量默认都是非空类型,必须持有有效值,不能为null。你的AppState类里的user字段声明为User,属于非空类型,所以创建实例时传null就会触发类型不匹配错误。
修复步骤:
- 修改
AppState类的user字段为可空类型
在User类型后加?,表示这个字段允许为null:class AppState { bool loading; User? user; // 加?标记为可空类型 AppState(this.loading, this.user); } - 保持现有逻辑不变
你的build方法里判断app.user == null跳转登录页的逻辑,现在可以正常运行,因为user已经被标记为可空类型。
修复后,final app = AppState(true, null);这行代码就不会再报错,同时能实现用户为null时跳转登录页的需求。
内容的提问来源于stack exchange,提问作者user23713913
相关产品推荐
相关产品推荐

