diff --git a/src/components/talk/message/TextMessage.vue b/src/components/talk/message/TextMessage.vue index ef94f24..0afb544 100644 --- a/src/components/talk/message/TextMessage.vue +++ b/src/components/talk/message/TextMessage.vue @@ -2,6 +2,7 @@ import { textReplaceEmoji } from '@/utils/emojis' import { textReplaceLink, textReplaceMention } from '@/utils/strings' import { ITalkRecordExtraText, ITalkRecord } from '@/types/chat' +import { computed } from 'vue' const props = defineProps<{ extra: ITalkRecordExtraText @@ -12,15 +13,14 @@ const props = defineProps<{ const float = props.data.float -let textContent = props.extra?.content || '' - -textContent = textReplaceLink(textContent) - -if (props.data.talk_type == 2) { - textContent = textReplaceMention(textContent, '#1890ff') -} - -textContent = textReplaceEmoji(textContent) +const textContent = computed(() => { + let text = props.extra?.content || '' + text = textReplaceLink(text) + if (props.data.talk_type == 2) { + text = textReplaceMention(text, '#1890ff') + } + return textReplaceEmoji(text) +})