我正在使用NetworkImage类来显示来自互联网的图像,以下是代码

return new Container(
        width: width,
        height: height,
        decoration: new BoxDecoration(
          color: const Color(0xff7c94b6),
          image: new DecorationImage(
            image: NetworkImage(url, headers: {"Authorization": token}),

            fit: fit,
          ),
          borderRadius: new BorderRadius.all(new Radius.circular(150.0)),
          border: new Border.all(
            color: Color(AppColors.surfacePrimary.hex),
            width: 0.0,
          ),
        ),
      );

但是,图像是缓存的,当在服务器上更新图像时,应用程序会显示旧的缓存图像. 如何在NetworkImage上停止缓存?

推荐答案

您可以使用以下命令逐出从URL加载的图像

 void evictImage() {
   final NetworkImage provider = NetworkImage(url);
   provider.evict().then<void>((bool success) {
     if (success)
       debugPrint('removed image!');
   });
 }

或者,您也可以将随机查询部分添加到URL

int counter = 0;
...
NetworkImage('https://example.com/images/image1.png?dummy=${counter++}');

Dart相关问答推荐

如何找到这个Currate函数的返回类型?

读取有状态(Stateful)小部件的状态

flutter: 使用提供程序时,状态在热重载时丢失

Flutter.io (dart) - 如何创建左填充覆盖?

在 Dart/Flutter 中创建 DateTime 对象时如何指定 TimeZone?

如何在 Dart 中设置文本框的值?

在 Dart 中,List.unmodifiable() 和 UnmodifiableListView 有什么不同?

结合freezed和hive

自定义声音推送通知不起作用

如何将圆形边框设置为flutter上的MaterialButton?

异常:在Flatter项目上没有Linux桌面项目配置错误

Flutter web url 导航

什么是NoSuchMethod错误,如何修复?

如何垂直对齐行元素?

Flutter ToggleButton 类 - Flutter 1.9.1

dart和下划线

如何在 Dart 中尚不存在的目录 struct 中创建文件?

dart列表最小值/最大值

在 Dart 中克​​隆list列表、map或set集合

如何在 Dart 中生成随机数?