出现场景
开发环境
adodeMacBook-Pro:~ ado$ flutter --version Flutter 2.0.3 • channel stable • https://github.com/flutter/flutter.git Framework • revision 4d7946a68d (6 months ago) • 2021-03-18 17:24:33 -0700 Engine • revision 3459eb2436 Tools • Dart 2.12.2
项目中需要展示图表,去pub上找了个库fl_chart
,看起来很不错,于是准备拿来用。我用的时候最新版本是0.40.0,添加到pubspec.yaml,运行出现以后错误。
../../../dev_tools/flutter/.pub-cache/hosted/pub.flutter-io.cn/fl_chart-0.40.0/lib/src/chart/base/base_chart/base_chart_data.dart:199:60: Error: Type 'MouseCursor' not found. typedef MouseCursorResolver<R extends BaseTouchResponse> = MouseCursor Function(FlTouchEvent, R?); ^^^^^^^^^^^ FAILURE: Build failed with an exception.
解决方法
看错误指的是MouseCursor这个类找不到。MouseCursor是desktop平台的鼠标光标,看样子应该属于Flutter高版本API的类。所以我们只需要将Flutter版本升级或者使用低版本的库。
方法1:升级Flutter
我目前的版本是Flutter 2.0,升级到Flutter 2.2以上即可。
方法2:使用兼容低版本的三方库
在pub库中,切换到version选项,从下面版本一个一个试,
切换到0.36.4,重新运行,发现正常,问题解决。
其他库的解决方法同时,新的版本不行,就继续换成老的版本一个一个试。