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

Flutter实现Google Places自动补全表单遇到两类报错求助

错误1:_RegisterScreen2State类型中未定义方法'GoogleMapPlaces'

解决步骤:

  • 修正拼写错误:initState中调用的类名GoogleMapPlaces拼写有误,正确类名为GoogleMapsPlaces,和你声明变量时的类名保持一致即可。
  • 补充导包:在文件头部添加导入语句:
import 'package:google_maps_webservice/places.dart';
  • 冗余代码清理:你已经在声明_places变量时直接完成了初始化,initState中的赋值代码属于重复操作,可以直接删除。

错误2:出现意外文本'late'

late是Dart 2.12.0版本以上(空安全版本)才支持的语法关键字,报错是因为你项目的Dart SDK最低版本约束低于2.12.0,两种解决方式二选一即可:

  • 升级SDK版本:打开项目根目录的pubspec.yaml文件,修改环境配置如下:
environment:
  sdk: '>=2.12.0 <3.0.0'

修改后执行flutter pub get重新拉取依赖即可生效。

  • 去掉late修饰:如果你不需要使用空安全特性,直接把变量声明代码中的late关键字删除即可,修改后代码为:
GoogleMapsPlaces _places = GoogleMapsPlaces(apiKey: kGoogleApiKey);

额外注意事项

你代码中kGoogleApiKey赋值为"MY IPA KEY"属于笔误,需要替换为你自己申请的有效Google Places API密钥,否则功能无法正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 05:06:03