У меня есть что-то вроде этого:
try {
final image = NetworkImageWithRetry(url,
fetchStrategy: FetchStrategyBuilder(
timeout: Duration(seconds: 2),
transientHttpStatusCodePredicate: (code) {
return code == null ||
FetchStrategyBuilder
.defaultTransientHttpStatusCodePredicate(code);
}).build()
);
return Padding(
padding: EdgeInsets.all(10.0),
child: Image(
image: image,
),
);
} catch FetchFailure {
print('exception!');
return Container();
}
Для несуществующего изображения, оно пытается загрузить несколько раз и всегда выдает:
EXCEPTION CAUGHT BY PACKAGE:FLUTTER_IMAGE
The following FetchFailure was thrown NetworkImageWithRetry failed to load
Как пойматьэтот?Я пытался catch Exception
, catch FetchFailure
, catch (error)
.
Я также пытался вернуть виджет на основе кода ошибки, но FetchStrategyBuilder
хочет, чтобы я вернул логическое значение.