diff --git a/src/api/merchImages.js b/src/api/merchImages.js index 93d9b6d..19a8f77 100644 --- a/src/api/merchImages.js +++ b/src/api/merchImages.js @@ -20,30 +20,16 @@ export const useMerchImagesApi = () => { } } - const cachedImages = new Map() // Map const getImageUrl = async (uuid, type) => { try { const response = await apiClient.get(`/merch/images/${uuid}`, { type }) + console.log(response.data.link) if (response.status !== 200) { throw new Error(`Get image failed: ${response.status}`) } - const { link, ETag } = response.data - - if (cachedImages.has(uuid) && cachedImages.get(uuid).etag === ETag) { - return cachedImages.get(uuid) - } - - const res = await fetch(link) - if (!res.ok) throw new Error(`Failed to load image: ${res.status}`) - - const blob = await res.blob() - const imgUrl = URL.createObjectURL(blob) - - cachedImages.set(uuid, { imgUrl, etag: ETag }) - return { imgUrl, etag: ETag } - + return response.data.link } catch (error) { console.error('Get image failed:', error) throw error @@ -53,16 +39,11 @@ export const useMerchImagesApi = () => { const deleteImage = async (uuid) => { try { const response = await apiClient.delete(`/merch/images/${uuid}`) + if (response.status !== 200) { throw new Error(`Delete failed: ${response.status}`) } - if (cachedImages.has(uuid)) { - const cached = cachedImages.get(uuid) - if (cached.imgUrl?.startsWith('blob:')) URL.revokeObjectURL(cached.imgUrl) - cachedImages.delete(uuid) - } - return true } catch (error) { console.error('Delete image failed:', error) diff --git a/src/views/CollectionView/CollectionMerchCard.vue b/src/views/CollectionView/CollectionMerchCard.vue index 293ba94..513daea 100644 --- a/src/views/CollectionView/CollectionMerchCard.vue +++ b/src/views/CollectionView/CollectionMerchCard.vue @@ -15,7 +15,7 @@ const fileList = ref([]) onMounted(async () => { try { - const { imgUrl } = await getImageUrl(props.merch.merch_uuid, 'thumbnail') + const imgUrl = await getImageUrl(props.merch.merch_uuid, 'thumbnail') fileList.value = [ { name: 'full.jpg', diff --git a/src/views/DetailsView/DetailsViewImages.vue b/src/views/DetailsView/DetailsViewImages.vue index 7406823..1ec8ab6 100644 --- a/src/views/DetailsView/DetailsViewImages.vue +++ b/src/views/DetailsView/DetailsViewImages.vue @@ -1,6 +1,6 @@