Flutter Undraw Widget - 更新后的PictureStream错误
Posted
技术标签:
【中文标题】Flutter Undraw Widget - 更新后的PictureStream错误【英文标题】:Flutter Undraw Widget - PictureStream Error after update 【发布时间】:2020-08-23 14:00:41 【问题描述】:我在 Undraw 小部件中更新到 Flutter 1.17 后遇到错误。它以前工作正常。
代码 -
Container(
height: height * 0.3,
width: width,
child: UnDraw(
width: width,
color: accentColor,
illustration: UnDrawIllustration.medicine,
placeholder: CircularProgressIndicator(),
errorWidget:
Icon(Icons.error_outline, color: Colors.red, size: 50),
),
),
依赖 - 取消绘制:^1.0.2
我遇到的错误 -
abstract class PictureStreamCompleter extends Diagnosticable
^
编译器消息:
/C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_svg-0.13.1/lib/src/picture_stream.dart:92:3: Error: The superclass, 'Diagnosticable', has no unnamed constructor that takes no arguments.
PictureStream();
^^^^^^^^^^^^^
/C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_svg-0.13.1/lib/src/picture_stream.dart:192:16: Error: The superclass, 'Diagnosticable', has no unnamed constructor that takes no arguments.
abstract class PictureStreamCompleter extends Diagnosticable
^
目标 kernel_snapshot 失败:异常:创建快照时出错:null 构建失败。
FAILURE:构建失败并出现异常。
在哪里: 脚本 'C:\src\flutter\packages\flutter_tools\gradle\flutter.gradle' 行:882
出了什么问题: 任务 ':app:compileFlutterBuildDebug' 执行失败。
Process 'command 'C:\src\flutter\bin\flutter.bat'' 以非零退出值 1 结束
尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。
通过https://help.gradle.org获得更多帮助
这是颤振医生的结果-
Doctor summary (to see all details, run flutter doctor -v):
* [√] Flutter (Channel stable, v1.17.0, on Microsoft Windows [Version 10.0.18363.778], locale en-US)
[√] android 工具链 - 为 Android 设备开发(Android SDK 版本 29.0.2) [√]Android Studio(3.5版) [√] VS 代码(版本 1.44.2) [√] 已连接设备(1 个可用)• 未发现任何问题!
【问题讨论】:
【参考方案1】:将 undraw 降级为 ^1.0.1 而不是 ^1.0.2 并且您可以添加 flutter_svg: ^0.17.4,如果您已将 Flutter 升级到 Flutter(Channel stable, v1.17.1, on Mac OS X 10.14.6 18G2022,语言环境 en-ZA)。希望对您有所帮助
【讨论】:
【参考方案2】:尝试从 undraw 包中访问 pubspec.yaml 并更新依赖:
flutter_svg: ^0.17.4
http: ^0.12.0+4
如果在此之后您仍然遇到一些错误,请尝试从您的应用程序中强制使用相同版本的 flutter_svg
依赖于 pubspec.yaml
:
flutter_svg: ^0.17.4
希望对你有帮助!
【讨论】:
以上是关于Flutter Undraw Widget - 更新后的PictureStream错误的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Flutter 的 Canvas 上绘制 Widget?