File tree Expand file tree Collapse file tree 3 files changed +32
-4
lines changed
Expand file tree Collapse file tree 3 files changed +32
-4
lines changed Original file line number Diff line number Diff line change 5858 }
5959 } )
6060 . then ( res => {
61- // TODO: 用户登录成功后,调接口获取未读消息数量
6261 if ( res ) {
6362 app . globalData . bIsLogin = true ;
6463 wx . setStorageSync ( 'sAccessToken' , sAccessToken ) ;
Original file line number Diff line number Diff line change 1+ import { fnCheckLogin } from '../../utils/util' ;
2+ const app = getApp ( ) ;
3+
14Page ( {
25 data : {
36 bIsReady : false , // 页面是否准备就绪
47 aHasReadMessageList : [ ] , // 已读消息列表
58 aHasNotReadMessageList : [ ] // 未读消息列表
69 } ,
710 onLoad ( ) {
8- this . fnNetRAllMessage ( ) ;
11+ // 页面加载时,如果是未登录状态,直接初始化页面
12+ if ( ! app . globalData . bIsLogin ) {
13+ this . setData ( {
14+ bIsReady : true
15+ } ) ;
16+ }
17+ } ,
18+ onShow ( ) {
19+ // 页面活动时,检测登录状态
20+ if ( fnCheckLogin ( ) ) {
21+ // 登录状态下,获取消息列表数据
22+ this . fnNetRAllMessage ( ) ;
23+ } else {
24+ // 否则重置消息列表数据
25+ this . setData ( {
26+ aHasReadMessageList : [ ] ,
27+ aHasNotReadMessageList : [ ]
28+ } ) ;
29+ }
930 } ,
1031 // 处理已读消息事件
1132 fnHandleHasReadMessageEvent ( e ) {
12- // 根据子组件传递的msg_id,将未读消息列表中 ,将该消息移至已读消息列表中
33+ // 根据子组件传递的msg_id,从未读消息列表中 ,将该消息移至已读消息列表中
1334 this . data . aHasReadMessageList . unshift ( ...this . data . aHasNotReadMessageList . filter ( oItem => oItem . id === e . detail . msg_id ) ) ;
1435 setTimeout ( ( ) => {
1536 this . setData ( {
@@ -59,6 +80,13 @@ Page({
5980 this . fnAllMessageDataModel
6081 )
6182 . then ( res => {
83+ if ( res . nHasNotReadMessageCount ) {
84+ // 更新tabBar上的新消息数量
85+ wx . setTabBarBadge ( {
86+ index : 1 ,
87+ text : `${ res . nHasNotReadMessageCount } `
88+ } ) ;
89+ }
6290 this . setData ( {
6391 bIsReady : true ,
6492 aHasReadMessageList : res . aHasReadMessageList ,
@@ -100,6 +128,7 @@ Page({
100128 create_at : wx . moment ( oItem . create_at ) . fromNow ( )
101129 } ;
102130 } ) ;
131+ oResult . nHasNotReadMessageCount = oData . hasnot_read_messages . length ;
103132 return oResult ;
104133 }
105134} ) ;
Original file line number Diff line number Diff line change 1414 <text>已读消息</text>
1515 <text>({{aHasReadMessageList.length}})</text>
1616 </view>
17- <message-item wx:for="{{aHasReadMessageList}}" wx:key="{{item.id}}" data="{{item}}" bindread="fnHandleHasReadMessageEvent" ></message-item>
17+ <message-item wx:for="{{aHasReadMessageList}}" wx:key="{{item.id}}" data="{{item}}"></message-item>
1818 </view>
1919</view>
You can’t perform that action at this time.
0 commit comments