Flutter - 命名参数未根据 pub.dartlang.org 定义,但包有效

Flutter - named parameters aren't defined according to pub.dartlang.org, but the package works

我刚刚为 Flutter 做出了第一个贡献。我可以很好地使用我的包,但由于 dart 分析发现的一些错误,我得到了很低的分数。我正在使用 GestureDetector class 并实现了 onLongPressDragStartonLongPressDragUpdateonLongPressDragUp 的回调。根据发布我的包后的分析,这些是错误的:

Fix lib/planner_class.dart. (-57.81 points)
Analysis of lib/planner_class.dart failed with 3 errors:
line 163 col 21: The named parameter 'onLongPressDragStart' isn't defined.
line 168 col 21: The named parameter 'onLongPressDragUpdate' isn't defined.
line 173 col 21: The named parameter 'onLongPressDragUp' isn't defined.

但是这些是在 GestureDetector class (https://docs.flutter.io/flutter/widgets/GestureDetector-class.html) . My offending code can be found here on github (https://github.com/ourtrip/planner/blob/7c4c6bb8533ab9ecb66c61ba757a88ba2aaf8092/lib/planner_class.dart#L163) 中定义的。奇怪的是,其他回调(onScaleStartonScaleUpdate)不会抛出错误。

可以在此处找到包含错误的 dart 包:https://pub.dartlang.org/packages/planner#-analysis-tab-

那么这可能是什么原因造成的?我该如何解决?

我遇到了同样的问题。

这里的问题是,您可能已经使用了 Flutter 的最新功能。您必须查看用于实施的 Widgets/Parameters。并在 pubspec.yaml 中设置最低 Flutter SDK 版本,让 pub.dev 知道您的包将支持哪个版本的 Flutter SDK(例如最新功能)。

例如,按如下方式编辑您的 pubspec:

environment:
  sdk: ">=2.2.2 <3.0.0"
  flutter: ">=1.12.0 <2.0.0"

此致