【发布时间】:2021-02-28 08:42:45
【问题描述】:
有什么方法可以捕获 Flutter 中的“无法加载资产:assets/images/sample_img_url.png”错误?
我要做的是通过提供其路径(来自 API)来加载资产图像。但如果我没有与给定路径关联的图像,我需要加载示例图像。
我创建了一个自定义占位符小部件,如下所示。但是它没有像我预期的那样工作。任何人都可以帮助我吗?
class ImagePlaceHolder extends StatelessWidget {
final String path;
final double width;
const ImagePlaceHolder({Key key, this.path, this.width}) : super(key: key);
@override
Widget build(BuildContext context) {
Image finalImage;
try{
finalImage = Image.asset(
path,
width: width,
);
}
catch(Exception){
finalImage = Image.asset(
"assets/images/app_update_logo.png",
width: width,
);
}
return finalImage;
}
}
【问题讨论】:
-
你在 pubspec.yaml 中添加了这个路径吗?
-
是的。图像路径没有问题。实际上,由于这个原因,资产文件夹中没有图像。这就是问题出现的原因。我需要处理这个场景。如果资产没有名为给定名称的图像,我需要显示示例图像。
标签: flutter error-handling try-catch flutter-assetimage