uniapp小程序下载缓存服务器上的图片

1. 使用uni.downloadFile,但是注意下载图片的地址里的域名,需要在微信公众平台里面的downloadFile合法域名进行配置。

export default function downloadAndCacheImage(imageUrl, name) {
	return new Promise((resolve, reject) => {
		console.log("imageUrl", imageUrl, name)
		// 检查本地缓存的更新时间
		let lastUpdateTime = uni.getStorageSync('lastUpdateTime');
		let currentDate = new Date().getTime();
		// if (!lastUpdateTime || currentDate - lastUpdateTime >= 24 * 60 * 60 * 1000) {
			// 下载最新的背景图片到本地
			uni.downloadFile({
				url: imageUrl,
				success: (res) => {
					uni.saveFile({
						tempFilePath: res.tempFilePath,
						success: (saveRes) => {
							// 保存图片路径到本地缓存
							uni.setStorageSync(name, saveRes.savedFilePath);
							uni.setStorageSync('lastUpdateTime', currentDate);
							console.log("缓存成功", res)
						}
					});
				},
				fail: (res) => {
					console.log("缓存失败", res)
				}
			});

		// }
	});

}

// 缓存图片
downloadAndCacheImage('https://www.com.jpg', 'search_page1')
this.list[2].img=uni.getStorageSync('search_page1') 

你可能感兴趣的:(uni-app,小程序)