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

Flutter使用flutter_form_builder提示不存在anchorPoint命名参数报错

Flutter Form Builder 集成编译报错

问题现象

  • 过往项目中使用Flutter Form Builder从未出现无法解决的异常,本次在新项目集成该库时直接触发编译报错
  • 已尝试执行flutter clean清理项目缓存、flutter pub get重新拉取依赖,再执行flutter run启动项目,问题没有任何改善
  • 完整报错截图:
    编译报错截图

业务侧测试代码

复现问题使用的表单代码如下,代码本身无语法错误:

FormBuilder(
    key: _formKey,
    child: Column(
      children: [
        FormBuilderTextField(
          name: 'age',
          decoration: const InputDecoration(
            labelText:
                'This value is passed along to the [Text.maxLines] attribute of the [Text] widget used to display the hint text.',
          ),
          onChanged: (value) {},
          // valueTransformer: (text) => num.tryParse(text),
          keyboardType: TextInputType.number,
        ),
      ],
    ),
  )

核心报错日志

../../FlutterDev/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_form_builder-7.2.1/lib/src/fields/form_builder_date_time_picker.dart:355:7: Error: No named parameter with the name 'anchorPoint'.
anchorPoint: widget.anchorPoint,
^^^^^^^^^^^
../../FlutterDev/flutter/packages/flutter/lib/src/material/date_picker.dart:133:19: Context: Found this candidate, but the arguments don't match.
Future<DateTime?> showDatePicker({
^^^^^^^^^^^^^^
../../FlutterDev/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_form_builder-7.2.1/lib/src/fields/form_builder_date_time_picker.dart:373:7: Error: No named parameter with the name 'anchorPoint'.
anchorPoint: widget.anchorPoint,
^^^^^^^^^^^
../../FlutterDev/flutter/packages/flutter/lib/src/material/time_picker.dart:2413:20: Context: Found this candidate, but the arguments don't match.
Future<TimeOfDay?> showTimePicker({
^^^^^^^^^^^^^^

故障原因

报错核心是Flutter SDK与flutter_form_builder版本不匹配:showDatePicker、showTimePicker组件的anchorPoint命名参数是Flutter较高版本才新增的API,当前本地安装的Flutter SDK版本偏低,没有这个参数,但依赖拉取到的flutter_form_builder 7.2.1版本内部已经在调用这部分高版本API,因此编译时直接抛出参数不存在的错误,和你编写的业务表单代码无关。

解决方法

  • 升级本地Flutter SDK:将Flutter升级到3.0及以上稳定版本,匹配flutter_form_builder 7.2.1的版本要求,升级后依次执行flutter clean、flutter pub get重启项目即可
  • 降低flutter_form_builder版本:如果暂时不能升级Flutter SDK,打开项目根目录的pubspec.yaml文件,将flutter_form_builder的版本约束调整为^7.1.0(该版本未调用anchorPoint相关高版本API,兼容低版本Flutter),保存后重新执行flutter pub get拉取依赖即可
  • 临时应急方案:如果需要快速验证效果,可以打开报错提示的本地缓存文件flutter_form_builder-7.2.1/lib/src/fields/form_builder_date_time_picker.dart,注释掉第355行、373行的anchorPoint: widget.anchorPoint,代码,即可临时通过编译。注意该修改会在下次执行flutter pub cache repair或重新拉取依赖后被覆盖,仅适合临时调试使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.31 13:12:24