|
@@ -23,8 +23,8 @@
|
|
|
<template #icon>
|
|
|
<van-image
|
|
|
round
|
|
|
- width="40px"
|
|
|
- height="40px"
|
|
|
+ width="32px"
|
|
|
+ height="32px"
|
|
|
:src="IM_PATH + user.avatar"
|
|
|
/>
|
|
|
</template>
|
|
@@ -36,7 +36,6 @@
|
|
|
<script setup>
|
|
|
import { useWebSocketStore } from '@/stores/modules/webSocketStore.js';
|
|
|
import { useWalletStore } from "@/stores/modules/walletStore.js";
|
|
|
-import { groupList } from '@/api/path/im.api';
|
|
|
const wsStore = useWebSocketStore();
|
|
|
const walletStore = useWalletStore();
|
|
|
const IM_PATH = import.meta.env.VITE_IM_PATH_FIlE;
|
|
@@ -44,36 +43,13 @@ const emit = defineEmits(['select']);
|
|
|
|
|
|
const show = ref(false);
|
|
|
const keyword = ref('');
|
|
|
-const loading = ref(false);
|
|
|
-const finished = ref(false);
|
|
|
-// 模拟用户数据
|
|
|
const users = ref([]);
|
|
|
|
|
|
-// 获取群成员信息
|
|
|
-const fetchGroupMembers = async () => {
|
|
|
- try {
|
|
|
- const res = await groupList(wsStore.toUserInfo.uuid);
|
|
|
-
|
|
|
- users.value = res.data || [];
|
|
|
- } catch (e) {
|
|
|
- console.error('获取群成员失败', e);
|
|
|
- }
|
|
|
-};
|
|
|
-
|
|
|
// 关键字过滤
|
|
|
const filteredUsers = computed(() => {
|
|
|
if (!keyword.value) return users.value;
|
|
|
- return users.value.filter(u => u.name.includes(keyword.value));
|
|
|
+ return users.value.filter(u => u.nickname.includes(keyword.value));
|
|
|
});
|
|
|
-
|
|
|
-// 模拟加载更多
|
|
|
-// const onLoad = () => {
|
|
|
-// setTimeout(() => {
|
|
|
-// finished.value = true;
|
|
|
-// loading.value = false;
|
|
|
-// }, 1000);
|
|
|
-// };
|
|
|
-
|
|
|
// 选中用户
|
|
|
const selectUser = user => {
|
|
|
console.log('选择用户:', user);
|
|
@@ -89,8 +65,23 @@ const close = () => {
|
|
|
// 供父组件调用打开
|
|
|
const open = () => {
|
|
|
show.value = true;
|
|
|
- fetchGroupMembers();
|
|
|
};
|
|
|
-
|
|
|
+onMounted(async () => {
|
|
|
+ // 获取群成员信息
|
|
|
+ users.value = await wsStore.fetchGroupMembers();
|
|
|
+})
|
|
|
defineExpose({ open });
|
|
|
</script>
|
|
|
+<style scoped lang="less">
|
|
|
+:deep(.van-cell){
|
|
|
+ align-items: center;
|
|
|
+
|
|
|
+}
|
|
|
+:deep(.van-cell__title){
|
|
|
+ font-family: PingFang SC, PingFang SC;
|
|
|
+ font-weight: 500;
|
|
|
+ font-size: 15px;
|
|
|
+ color: #000000;
|
|
|
+ margin-left: 12px;
|
|
|
+}
|
|
|
+</style>
|