人物互动隐关系页面用户组与关系图二级界面联动完毕

This commit is contained in:
qumeng039@126.com 2025-07-29 16:45:48 +08:00
parent ccc4e1de7e
commit c467197b53
2 changed files with 13 additions and 11 deletions

View File

@ -49,9 +49,11 @@ import graphTitleImg from "@/assets/images/linkPrediction/title/graph1-title.png
import analysisTitleImg from "@/assets/images/linkPrediction/title/analysis-title.png" import analysisTitleImg from "@/assets/images/linkPrediction/title/analysis-title.png"
const interactionStore = useCharacterInteractionStore() const interactionStore = useCharacterInteractionStore()
// // &&
const handleSelectedUserGroup = (group) => { const handleSelectedUserGroup = (group) => {
interactionStore.curComponent = "detailNode"
interactionStore.initInteractionPostList(group.relationId) interactionStore.initInteractionPostList(group.relationId)
interactionStore.initGraphCommunityDetailNode(group.list.map((item) => item.groupId))
} }
onMounted(() => { onMounted(() => {

View File

@ -8,12 +8,12 @@
@click="handleUserItem(index, group)" @click="handleUserItem(index, group)"
:class="{ active: curUserGroupIndex == index }" :class="{ active: curUserGroupIndex == index }"
> >
<div class="group-type" v-if="group.list.length > 2 && group?.interactivity != ' '"> <div class="group-type">
<img <img
src="@/assets/images/linkPrediction/title/group-item-title.png" src="@/assets/images/linkPrediction/title/group-item-title.png"
class="group-type-back" class="group-type-back"
/> />
<div class="group-type-content">{{ group.interactivity }}</div> <div class="group-type-content">TOP{{ group.rank }}</div>
</div> </div>
<div class="user-list-item" v-for="child in group.list" :key="child.id"> <div class="user-list-item" v-for="child in group.list" :key="child.id">
<img :src="defaultAvatar" alt="" class="avatar" /> <img :src="defaultAvatar" alt="" class="avatar" />
@ -38,10 +38,10 @@
</template> </template>
<script setup> <script setup>
import { defineProps, defineEmits, ref } from "vue"; import { defineProps, defineEmits, ref } from "vue"
import defaultAvatar from "@/assets/images/avatar/default.png"; import defaultAvatar from "@/assets/images/avatar/default.png"
const curUserGroupIndex = ref(0); const curUserGroupIndex = ref(0)
const emit = defineEmits(["click:selectedGroup"]); const emit = defineEmits(["click:selectedGroup"])
const props = defineProps({ const props = defineProps({
userList: { userList: {
type: Array, type: Array,
@ -55,12 +55,12 @@ const props = defineProps({
type: Number, type: Number,
default: 480 default: 480
} }
}); })
const handleUserItem = (index, group = {}) => { const handleUserItem = (index, group = {}) => {
curUserGroupIndex.value = index; curUserGroupIndex.value = index
emit("click:selectedGroup", group); emit("click:selectedGroup", group)
}; }
</script> </script>
<style scoped lang="less"> <style scoped lang="less">