2025-11-04 16:53:08 +08:00
|
|
|
<script lang="ts" setup>
|
2025-11-07 17:58:24 +08:00
|
|
|
import { WxMusic } from '#/views/mp/modules/wx-music';
|
|
|
|
|
import { WxNews } from '#/views/mp/modules/wx-news';
|
|
|
|
|
import { WxVideoPlayer } from '#/views/mp/modules/wx-video-play';
|
|
|
|
|
import { WxVoicePlayer } from '#/views/mp/modules/wx-voice-play';
|
2025-11-04 16:53:08 +08:00
|
|
|
|
|
|
|
|
defineOptions({ name: 'ReplyContentCell' });
|
|
|
|
|
|
|
|
|
|
const props = defineProps<{
|
|
|
|
|
row: any;
|
|
|
|
|
}>();
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<template>
|
|
|
|
|
<div>
|
|
|
|
|
<div v-if="props.row.responseMessageType === 'text'">
|
|
|
|
|
{{ props.row.responseContent }}
|
|
|
|
|
</div>
|
|
|
|
|
<div v-else-if="props.row.responseMessageType === 'voice'">
|
|
|
|
|
<WxVoicePlayer
|
|
|
|
|
v-if="props.row.responseMediaUrl"
|
|
|
|
|
:url="props.row.responseMediaUrl"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-else-if="props.row.responseMessageType === 'image'">
|
|
|
|
|
<a target="_blank" :href="props.row.responseMediaUrl">
|
|
|
|
|
<img :src="props.row.responseMediaUrl" style="width: 100px" />
|
|
|
|
|
</a>
|
|
|
|
|
</div>
|
|
|
|
|
<div
|
|
|
|
|
v-else-if="
|
|
|
|
|
props.row.responseMessageType === 'video' ||
|
|
|
|
|
props.row.responseMessageType === 'shortvideo'
|
|
|
|
|
"
|
|
|
|
|
>
|
|
|
|
|
<WxVideoPlayer
|
|
|
|
|
v-if="props.row.responseMediaUrl"
|
|
|
|
|
:url="props.row.responseMediaUrl"
|
|
|
|
|
style="margin-top: 10px"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-else-if="props.row.responseMessageType === 'news'">
|
|
|
|
|
<WxNews :articles="props.row.responseArticles" />
|
|
|
|
|
</div>
|
|
|
|
|
<div v-else-if="props.row.responseMessageType === 'music'">
|
|
|
|
|
<WxMusic
|
|
|
|
|
:title="props.row.responseTitle"
|
|
|
|
|
:description="props.row.responseDescription"
|
|
|
|
|
:thumb-media-url="props.row.responseThumbMediaUrl"
|
|
|
|
|
:music-url="props.row.responseMusicUrl"
|
|
|
|
|
:hq-music-url="props.row.responseHqMusicUrl"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|