From dcaa2799aa133dff104d31366f9a565af121b934 Mon Sep 17 00:00:00 2001 From: moonrailgun Date: Thu, 30 Mar 2023 19:18:48 +0800 Subject: [PATCH] fix: fix url problem about avatar url in popover --- client/packages/design/components/AvatarWithPreview/index.tsx | 3 ++- client/web/src/components/UserProfileContainer.tsx | 2 +- client/web/src/utils/image-helper.ts | 4 +++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/client/packages/design/components/AvatarWithPreview/index.tsx b/client/packages/design/components/AvatarWithPreview/index.tsx index 05880574..7ef7ccad 100644 --- a/client/packages/design/components/AvatarWithPreview/index.tsx +++ b/client/packages/design/components/AvatarWithPreview/index.tsx @@ -1,3 +1,4 @@ +import { parseUrlStr } from 'node_modules/tailchat-shared'; import React, { useState } from 'react'; import { Avatar, AvatarProps } from '../Avatar'; import { Image } from '../Image'; @@ -27,7 +28,7 @@ export const AvatarWithPreview: React.FC = React.memo((props) => { { setVisible(value); }, diff --git a/client/web/src/components/UserProfileContainer.tsx b/client/web/src/components/UserProfileContainer.tsx index bf7c1709..03a29b58 100644 --- a/client/web/src/components/UserProfileContainer.tsx +++ b/client/web/src/components/UserProfileContainer.tsx @@ -1,7 +1,7 @@ import { fetchImagePrimaryColor } from '@/utils/image-helper'; import React, { PropsWithChildren } from 'react'; import { AvatarWithPreview, getTextColorHex } from 'tailchat-design'; -import { useAsync, UserBaseInfo } from 'tailchat-shared'; +import { parseUrlStr, useAsync, UserBaseInfo } from 'tailchat-shared'; /** * 用户信息容器 diff --git a/client/web/src/utils/image-helper.ts b/client/web/src/utils/image-helper.ts index e29b9f3e..adacdadb 100644 --- a/client/web/src/utils/image-helper.ts +++ b/client/web/src/utils/image-helper.ts @@ -1,3 +1,5 @@ +import { parseUrlStr } from 'tailchat-shared'; + /** * 加载图片 */ @@ -6,7 +8,7 @@ async function loadImage(url: string): Promise { return new Promise((resolve, reject) => { el.onload = () => resolve(el); el.onerror = reject; - el.src = url; + el.src = parseUrlStr(url); el.crossOrigin = 'Anonymous'; }); }