You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							80 lines
						
					
					
						
							1.9 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							80 lines
						
					
					
						
							1.9 KiB
						
					
					
				
								// pages/user/common/myTopics/index.js
							 | 
						|
								import dayjs from '../../../utils/dayjs/index.js'
							 | 
						|
								import relativeTime from '../../../utils/dayjs/relativeTime.js'
							 | 
						|
								dayjs.extend(relativeTime);
							 | 
						|
								import { UserModel } from '../../../models/user.js'
							 | 
						|
								let userModel = new UserModel()
							 | 
						|
								
							 | 
						|
								Page({
							 | 
						|
								
							 | 
						|
								  /**
							 | 
						|
								   * 页面的初始数据
							 | 
						|
								   */
							 | 
						|
								  data: {
							 | 
						|
								    headerTitles: ['我参与的', '我发布的'],
							 | 
						|
								    selectedTitle: 0,
							 | 
						|
								    currentPage:1,
							 | 
						|
								    list:{
							 | 
						|
								      type:Array,
							 | 
						|
								      value:[]
							 | 
						|
								    }
							 | 
						|
								  },
							 | 
						|
								
							 | 
						|
								  /**
							 | 
						|
								   * 生命周期函数--监听页面加载
							 | 
						|
								   */
							 | 
						|
								  onLoad: function (options) {
							 | 
						|
								    this.fetchMyTopicList()
							 | 
						|
								  },
							 | 
						|
								  fetchMyTopicList(){
							 | 
						|
								    let page = this.data.currentPage
							 | 
						|
								    userModel.getMyTopics(page,this.data.selectedTitle+1,res=>{
							 | 
						|
								      const datas = res.result.list
							 | 
						|
								      let tempDatas = []
							 | 
						|
								      datas.forEach(item => {
							 | 
						|
								        tempDatas.push({
							 | 
						|
								          topicId: item.id,
							 | 
						|
								          title: item.title,
							 | 
						|
								          userIcon: item.groupAvator,
							 | 
						|
								          userName: item.author,
							 | 
						|
								          commentNum: item.commentNum,
							 | 
						|
								          topicImg: item.image,
							 | 
						|
								          time: item.createTime,
							 | 
						|
								        })
							 | 
						|
								      })
							 | 
						|
								      if (page == 1) {
							 | 
						|
								        this.setData({
							 | 
						|
								          list: tempDatas
							 | 
						|
								        })
							 | 
						|
								      } else {
							 | 
						|
								        if (tempDatas.length > 0) {
							 | 
						|
								          const list = [...this.data.list, ...tempDatas]
							 | 
						|
								          this.setData({
							 | 
						|
								            list: list
							 | 
						|
								          })
							 | 
						|
								        } else {
							 | 
						|
								          const page = this.data.currPage - 1
							 | 
						|
								          this.setData({
							 | 
						|
								            currPage: page
							 | 
						|
								          })
							 | 
						|
								          wx.showToast({
							 | 
						|
								            title: '已加载全部',
							 | 
						|
								            icon: 'none'
							 | 
						|
								          })
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								      console.log(this.data.list)
							 | 
						|
								      wx.stopPullDownRefresh()
							 | 
						|
								    })
							 | 
						|
								  },
							 | 
						|
								
							 | 
						|
								  // 定义点击标题的事件处理函数,将选中标题的id赋值给selectedTitle
							 | 
						|
								  tapSegment: function (e) {
							 | 
						|
								    const item = e.detail;
							 | 
						|
								    this.setData({
							 | 
						|
								      selectedTitle: item.index,
							 | 
						|
								      list:[]
							 | 
						|
								    });
							 | 
						|
								    this.fetchMyTopicList()
							 | 
						|
								  }
							 | 
						|
								})
							 |