From a1d7e81859f554f3a53680cc35f0f49bf1f77098 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期四, 14 五月 2026 14:37:02 +0800
Subject: [PATCH] 导入项目
---
src/views/mall/promotion/kefu/components/tools/EmojiSelectPopover.vue | 42 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 42 insertions(+), 0 deletions(-)
diff --git a/src/views/mall/promotion/kefu/components/tools/EmojiSelectPopover.vue b/src/views/mall/promotion/kefu/components/tools/EmojiSelectPopover.vue
new file mode 100644
index 0000000..43c096d
--- /dev/null
+++ b/src/views/mall/promotion/kefu/components/tools/EmojiSelectPopover.vue
@@ -0,0 +1,42 @@
+<!-- emoji 琛ㄦ儏閫夋嫨缁勪欢 -->
+<template>
+ <el-popover :width="500" placement="top" trigger="click">
+ <template #reference>
+ <Icon :size="30" class="ml-10px cursor-pointer" icon="twemoji:grinning-face" />
+ </template>
+ <ElScrollbar height="300px">
+ <ul class="ml-2 flex flex-wrap px-2">
+ <li
+ v-for="(item, index) in emojiList"
+ :key="index"
+ :style="{
+ borderColor: 'var(--el-color-primary)',
+ color: 'var(--el-color-primary)'
+ }"
+ :title="item.name"
+ class="icon-item mr-2 mt-1 w-1/10 flex cursor-pointer items-center justify-center border border-solid p-2"
+ @click="handleSelect(item)"
+ >
+ <img :src="item.url" class="w-24px h-24px" />
+ </li>
+ </ul>
+ </ElScrollbar>
+ </el-popover>
+</template>
+
+<script lang="ts" setup>
+defineOptions({ name: 'EmojiSelectPopover' })
+import { Emoji, useEmoji } from './emoji'
+
+const { getEmojiList } = useEmoji()
+const emojiList = computed(() => getEmojiList())
+
+/** 閫夋嫨 emoji 琛ㄦ儏 */
+const emits = defineEmits<{
+ (e: 'select-emoji', v: Emoji)
+}>()
+const handleSelect = (item: Emoji) => {
+ // 鏁翠釜 emoji 鏁版嵁浼犻�掑嚭鍘伙紝鏂逛究浠ュ悗杈撳叆妗嗙洿鎺ユ樉绀鸿〃鎯�
+ emits('select-emoji', item)
+}
+</script>
--
Gitblit v1.8.0