新的振翅。如何使用缓存的网络图像在flatter中显示网络图像,并将本地imageAsset中的图像作为占位符?

新的振翅。如何使用缓存的网络图像在flatter中显示网络图像,并将本地imageAsset中的图像作为占位符?,image,if-statement,flutter,networking,Image,If Statement,Flutter,Networking,我有一个model/event.dart文件中的动态本地AssetImage,但如果imagePath为空,我希望显示一个来自网络的图像,其中包含缓存的\u network\u图像 child: Stack( children: <Widget>[ ClipRRect( borderRadius: BorderRadius.circular(20.0),

我有一个model/event.dart文件中的动态本地AssetImage,但如果imagePath为空,我希望显示一个来自网络的图像,其中包含缓存的\u network\u图像

           child: Stack(
              children: <Widget>[
                ClipRRect(
                  borderRadius: BorderRadius.circular(20.0),
                  child: Image(
                    height: 200.0,
                    /* width: 280.0, */
                    width: MediaQuery.of(context).size.width * 0.80,
                    image: AssetImage(event.imagePath),
                    fit: BoxFit.cover,
                  ),
                ),
              ],
            ),

从缓存的\u网络\u映像中,您可以执行以下操作

 CachedNetworkImage(
  imageUrl: "http://via.placeholder.com/200x150",
  imageBuilder: (context, imageProvider) => Container(
    decoration: BoxDecoration(
      image: DecorationImage(
          image: imageProvider,
          fit: BoxFit.cover,
          colorFilter:
              ColorFilter.mode(Colors.red, BlendMode.colorBurn)),
    ),
  ),
  placeholder: (context, url) => placeholder: (context, url) => {return Image.asset('assets/img/my_placeholder.png');},
  errorWidget: (context, url, error) => Icon(Icons.error),
),
否则,您可以使用下面所示的
FadeInImageimage:NetworkImageurl,占位符:AssetImageassetName

在AssetImage上出错,如-返回类型“AssetImage”不是关闭上下文所需的“Widget”。按如下方式返回占位符:context,url=>{return Image.asset'assets/img/my_placeholder.png';},我也更新了答案