【发布时间】:2020-07-30 20:25:30
【问题描述】:
我正在使用基于flutter_audio_recorder 的 playerWidget。虽然它可以按要求工作,但在编译和热重启时我会收到一条恼人的错误消息错误,因为路径一开始是空的。该路径为空,因为尚未加载任何音频文件。但是一旦我使用的PageView.builder 完成,音频就会被加载,因此错误消息对实际操作没有影响。但是,错误消息变得烦人。所以我想从我的服务器提供一个默认的音频文件,这样错误就会停止。
错误信息说
════════ Exception caught by widgets library ═══════════════════════════════════════════════════════
The following NoSuchMethodError was thrown building SpeakRecorder(dirty, dependencies: [_InheritedProviderScope<SocialProvider>], state: SpeakRecorderState#5e63d):
The getter 'path' was called on null.
Receiver: null
Tried calling: path
而调用错误的Widget是;
child: PlayerWidget(url: _current.path),
我尝试了以下方法;
String defaultaudio = _current.path ?? 'http://example.com/ping.m4a';
但它不能解决 path is null 错误。谁能看到我做错了什么?
【问题讨论】:
-
这个错误意味着
_current是null不管它是什么。您可以改为写_current?.path ?? 'http://example.com/ping.m4a';。 -
成功了!我怎样才能给你信用?你能正式回答这个问题吗?
标签: flutter dart null conditional-statements