1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
  | import { getCataLogTagList, pageZSZXContentList, actionDo } from '../../api/index' 
 |  Page({ 
 |    
 |    /** 
 |     * 页面的初始数据 
 |     */ 
 |    data: { 
 |      tagList: [], 
 |      activeCate: '', 
 |      dataList: [], 
 |      total: 0, 
 |      pageNum: 1, 
 |      pageSize: 10, 
 |    
 |      code: '', 
 |      tagCodes: '' 
 |    }, 
 |    onLoad(options) { 
 |      wx.setNavigationBarTitle({ 
 |        title: options.name 
 |     }) 
 |      this.setData({ code: options.code}) 
 |      this.getTabList() 
 |      this.getList() 
 |    }, 
 |    onReachBottom() { 
 |      console.log('触底事件'); 
 |      const { total, dataList, pageNum } = this.data 
 |      if(total > dataList.length){ 
 |        this.setData({ pageNum: pageNum + 1 }) 
 |        this.getList() 
 |      }else{ 
 |        wx.showToast({ 
 |          title: '暂无更多数据', 
 |          icon: 'none' 
 |        }) 
 |      } 
 |    }, 
 |    onPullDownRefresh: function () { 
 |      console.log('下拉刷新'); 
 |      this.setData({ dataList: [], pageNum: 1, total: 0 }) 
 |      wx.stopPullDownRefresh() 
 |      this.getList() 
 |    }, 
 |    getList(){ 
 |      const { code, tagCodes, pageSize, pageNum } = this.data 
 |      pageZSZXContentList({ 
 |        catalogCode: code, 
 |        tagCodes: tagCodes ? [tagCodes] : [], 
 |        pageSize, 
 |        pageNum 
 |      }).then(res => { 
 |        this.setData({ 
 |          total: res.data.total, 
 |          dataList: [ ...this.data.dataList, ...res.data.records ] 
 |        }) 
 |      }).finally(()=>{  
 |        wx.stopPullDownRefresh() 
 |      }) 
 |    }, 
 |    itemClick(e) { 
 |      const item = e.currentTarget.dataset.item 
 |      const { dataList } = this.data 
 |      dataList.forEach(ite => { 
 |        if(item.id === ite.id){ 
 |          ite.viewCount += 1 
 |        } 
 |      }) 
 |      this.setData({ dataList }) 
 |      if(item.contentType){ 
 |        actionDo({actionType: 'view',id: item.id}) 
 |      } 
 |      if(item.contentType == 'video'){ 
 |        wx.previewMedia({ 
 |          sources: [{ url: item.content, type: 'video' }] 
 |        }) 
 |      } 
 |      if(item.contentType == 'link'){ 
 |        wx.navigateTo({ 
 |          url: '/pages/webView/index', 
 |          success: function(res) { 
 |            console.log('发出事件'); 
 |            res.eventChannel.emit('acceptDataFromOpenerPage',{link:item.content} ); 
 |          } 
 |        }) 
 |      } 
 |      if(item.contentType == 'page'){ 
 |        getApp().globalData.catalogCode=item.content 
 |        wx.switchTab({ 
 |          url: '/pages/discover/discover' 
 |        }) 
 |      } 
 |    }, 
 |    cateClick(e) { 
 |      const { code } = e.target.dataset 
 |      this.setData({ 
 |        tagCodes: code, 
 |        pageNum: 1, 
 |        dataList: [] 
 |      }) 
 |      this.getList() 
 |    }, 
 |    getTabList() { 
 |      getCataLogTagList({ 
 |        catalogCode: this.data.code 
 |      }).then(res => { 
 |        if(res && res.data && res.data.length > 0){ 
 |          this.setData({ 
 |            tagList: res.data[0].valueVos 
 |          }) 
 |        } 
 |         
 |      }) 
 |    }, 
 |    onReady() { 
 |    
 |    }, 
 |    
 |    /** 
 |     * 生命周期函数--监听页面显示 
 |     */ 
 |    onShow() { 
 |    
 |    }, 
 |    
 |    /** 
 |     * 生命周期函数--监听页面隐藏 
 |     */ 
 |    onHide() { 
 |    
 |    }, 
 |    
 |    /** 
 |     * 生命周期函数--监听页面卸载 
 |     */ 
 |    onUnload() { 
 |    
 |    }, 
 |    /** 
 |     * 页面上拉触底事件的处理函数 
 |     */ 
 |    
 |    /** 
 |     * 用户点击右上角分享 
 |     */ 
 |    onShareAppMessage() { 
 |    
 |    } 
 |  }) 
 |  
  |