市北人才赋能平台 --小程序端
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.

131 lines
2.9 KiB

6 years ago
// pages/user/common/myFavorite/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()
6 years ago
Page({
/**
* 页面的初始数据
*/
data: {
6 years ago
list: [],
5 years ago
currentPage: 1,
type:1
6 years ago
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
onShow :function (){
this.setData({
currentPage: 1
})
wx.pageScrollTo({
scrollTop: 0,
})
this.fetchMyFavoriteList()
6 years ago
},
6 years ago
fetchMyFavoriteList () {
5 years ago
let page = this.data.currentPage;
let type = this.data.type;
userModel.getMyFavoriteList(page,type,res => {
const datas = res.result.list;
let tempDatas = [];
datas.forEach(item => {
tempDatas.push({
topicId: item.contentId,
title: item.title,
topicImg: item.image,
userIcon: item.groupAvator,
userName: item.author,
time: item.createTime,
6 years ago
commentNum: item.commentNum || '',
type: item.type
})
})
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.currentPage - 1
this.setData({
currentPage: page
})
wx.showToast({
title: '已加载全部',
icon: 'none'
})
}
}
console.log(this.data.list)
wx.stopPullDownRefresh()
})
},
6 years ago
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
this.setData({
currentPage: 1,
})
this.fetchMyFavoriteList()
6 years ago
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
6 years ago
let page = this.data.currentPage + 1
this.setData({
currentPage: page,
})
this.fetchMyFavoriteList()
6 years ago
},
6 years ago
clickListItem (e) {
if (e.detail.id) {
let id = e.detail.id
let type = e.detail.type;
if(type == '3'){
wx.navigateTo({
url: '/pages/resource/detail/index?id=' + id
})
return;
}else if(type == '4'){
wx.navigateTo({
url: '/pages/topics/rent/detail/index?id=' + id
})
return;
}else{
wx.navigateTo({
url: `/pages/article/index?id=${id}`,
})
}
6 years ago
} else {
const item = e.detail.item;
let id = item.topicId
wx.navigateTo({
url: `/pages/topics/interactive/topicArticle/index?topicId=${id}`,
})
}
5 years ago
},
refresh:function(e){
var type = e.currentTarget.dataset.type;
this.setData({
type:type
});
this.fetchMyFavoriteList();
6 years ago
}
})