fix: fix close the error message

Fix hide other action modal when close the error message at the right top of the page.

Change-Id: I8bae11a51bec1eb2c7855ca56d10dc1deda9f503
This commit is contained in:
Jingwei.Zhang 2023-04-21 13:53:04 +08:00
parent b30e7ae9a3
commit c31a341f7c
2 changed files with 16 additions and 2 deletions

View File

@ -66,7 +66,9 @@ export class BaseLayout extends Component {
}
get noticeCount() {
return this.rootStore.noticeCount;
return (
this.rootStore.noticeCount - (this.rootStore.noticeCountWaitRemove || 0)
);
}
get user() {

View File

@ -66,6 +66,8 @@ export class RootStore {
@observable
noticeCount = 0;
noticeCountWaitRemove = 0;
@observable
enableBilling = false;
@ -187,6 +189,7 @@ export class RootStore {
this.hasAdminPageRole = false;
this.version = '';
this.noticeCount = 0;
this.noticeCountWaitRemove = 0;
this.goToLoginPage();
}
@ -238,12 +241,21 @@ export class RootStore {
@action
removeNoticeCount() {
this.noticeCount -= 1;
const elements = document.getElementsByClassName('ant-modal');
// if there is an modal in the page, the notice count will be changed later, after no modal.
if (elements.length > 0) {
this.noticeCountWaitRemove += 1;
} else {
const noticeCount = this.noticeCount - 1 - this.noticeCountWaitRemove;
this.noticeCount = noticeCount < 0 ? 0 : noticeCount;
this.noticeCountWaitRemove = 0;
}
}
@action
clearNoticeCount() {
this.noticeCount = 0;
this.noticeCountWaitRemove = 0;
}
clearData() {