From 7a8e0455ba80e4cc80fb63795b632dd57c742bce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?TOP=E7=B3=AF=E7=B1=B3?= <1130395124@qq.com> Date: Sat, 8 Apr 2023 16:30:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96message?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/message/message.vue | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/src/pages/message/message.vue b/src/pages/message/message.vue index 2ab8083..1704bf3 100644 --- a/src/pages/message/message.vue +++ b/src/pages/message/message.vue @@ -39,6 +39,7 @@ export default { return { utils: this.$utils, bodyPt: 0, + loaded: false, timer: null, tabIndex: 0, tabHeight: 0, @@ -53,12 +54,13 @@ export default { messageTabIndex: (state) => state.system.messageTabIndex, }), }, - onLoad() {}, - async onShow() { - if (this.messageTabIndex != this.tabIndex || (this.messageTabIndex == 0 && this.tabIndex == 0)) { - this.tabList = []; - await this.loadCate(); - this.switchTab(this.messageTabIndex); + async onLoad() { + await this.loadCate(); + this.switchTab(this.tabIndex); + }, + onShow() { + if (this.messageTabIndex != this.tabIndex) { + this.tabIndex = this.messageTabIndex; } this.$store.commit("system/refreshOrder", true); }, @@ -80,10 +82,11 @@ export default { currentTab.page = 1; currentTab.list = []; currentTab.more = true; - clearTimeout(this.timer); - this.timer = setTimeout(() => { - this.loadList(index); - }, 100); + uni.pageScrollTo({ + scrollTop: 0, + duration: 0, + }); + this.loadList(index); }, setTabHeight() { let query = uni.createSelectorQuery().in(this); @@ -98,6 +101,7 @@ export default { * 加载分类 */ async loadCate() { + if (this.loaded) return; await this.$models.system.notifyCate().then((cate) => { cate.forEach((item) => { this.tabList.push({ @@ -108,6 +112,7 @@ export default { list: [], }); }); + this.loaded = true; }); }, /**