gpt4 book ai didi

尽管 url 未更改,但 Flutter 强制重新加载图像事件

转载 作者:行者123 更新时间:2023-12-04 13:57:58 25 4
gpt4 key购买 nike

场景:用户转到个人资料页面并点击个人资料图片(URL a/b/c),这会打开图片选择器。然后将选择的图像上传到 firebase 说 a/b/c url。图像现在已更改,但图像 URL 未更改。

我尝试使用 CachedNetworkImage 和 FadeInImage 但即使我调用 setState 也没有刷新图像。

setState(() {
_userProfilePicUrl = _userProfilePicUrl;
});

我也尝试过但没有运气。
await DefaultCacheManager().removeFile(url);
await DefaultCacheManager().putFile(url, bytes);

如何在不重新启动应用程序的情况下使用相同的 url 刷新图像。

最佳答案

成功将新文件上传到您的服务器后,您可以从 CachedNetworkImage 类调用以下静态方法:

Future<void> removeUrlFromCache(String photoUrl) async {
await CachedNetworkImage.evictFromCache(photoUrl);
}
它是一种异步方法,因此请确保使用 async/await。
通过从缓存中删除 url,下次使用 CachedNetworkImage Widget 和相同的 photoUrl 构建 Widget 时,新图像将被下载并存储在缓存中:
Widget _buildPhotoWidget(String photoUrl) {
return CachedNetworkImage(
imageUrl: photoUrl,
);
}

关于尽管 url 未更改,但 Flutter 强制重新加载图像事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57708199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com