no message

This commit is contained in:
kuaifan 2025-03-11 15:53:53 +08:00
parent 56ea048ab3
commit 5be209ab59
3 changed files with 35 additions and 5 deletions

View File

@ -4,6 +4,9 @@
<div class="dialog-user">
<div class="member-head">
<div class="member-title">{{$L('项目成员')}}<span @click="memberShowAll=!memberShowAll">({{projectData.project_user.length}})</span></div>
<div class="member-open" @click="onMsgOpen" :title="$L('在消息中打开')">
<Icon type="ios-chatbubbles-outline"/>
</div>
<div class="member-close" @click="onClose">
<Icon type="ios-close"/>
</div>
@ -34,6 +37,15 @@ export default {
return {
loadIng: false,
memberShowAll: false,
beforeDestroyClose: false,
}
},
beforeDestroy() {
if (this.beforeDestroyClose) {
requestAnimationFrame(_ => {
this.$store.dispatch('toggleProjectParameter', 'chat');
})
}
},
@ -46,7 +58,14 @@ export default {
},
methods: {
onMsgOpen() {
this.$store.dispatch("openDialog", this.projectData.dialog_id);
this.goForward({name: 'manage-messenger', params: {dialogAction: 'dialog'}});
this.beforeDestroyClose = true;
},
onClose() {
this.$emit('on-close');
this.$store.dispatch('toggleProjectParameter', 'chat');
}
}

View File

@ -1,8 +1,8 @@
<template>
<div class="page-project">
<template v-if="projectId > 0">
<ProjectPanel/>
<ProjectDialog/>
<ProjectPanel ref="panel"/>
<ProjectDialog @on-close="onDialogClose"/>
</template>
<ProjectList v-if="windowPortrait" v-show="projectId === 0"/>
</div>
@ -73,6 +73,10 @@ export default {
});
this.$store.dispatch("forgetTaskCompleteTemp", true);
});
},
onDialogClose() {
this.$refs.panel?.handleColumnDebounce();
}
}
}

View File

@ -10,24 +10,31 @@
.member-head {
display: flex;
align-items: center;
padding: 0 22px;
padding: 0 14px 0 22px;
.member-title {
flex: 1;
font-size: 18px;
font-weight: 600;
padding-right: 12px;
> span {
padding-left: 6px;
color: $primary-color;
cursor: pointer;
}
}
.member-open {
cursor: pointer;
margin-right: 8px;
.ivu-icon-ios-chatbubbles-outline {
font-size: 22px;
}
}
.member-close {
cursor: pointer;
.ivu-icon-ios-close {
font-size: 38px;
top: 3px;
right: 2px;
transition: all 0.2s;
}