// pages/personHome/personHome.js var app = getApp(); const request = require("../../utils/request.js"); const login = require("../../utils/login.js"); Page({ /** * 页面的初始数据 */ data: { info: {}, userId: null,//当前用户 beVisitedUserId: null, contentList: [], handleStatus: true, contentId: null }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { if(options.userId) { this.setData({ userId: app.globalData.userInfo.userId, beVisitedUserId: options.userId }) }else{ this.setData({ userId: app.globalData.userInfo.userId, beVisitedUserId: app.globalData.userInfo.userId, }) } this.getInfo(); this.getContentList(); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { let that = this; let lastContentId = Number(that.data.contentList[that.data.contentList.length-1].contentId); request.getData( 'app/cont/content/mine', {beVisitedUserId: that.data.beVisitedUserId,lastContentId: lastContentId}, res => { if(res.data.data.length > 0) { let arr = res.data.data; arr.forEach((item, index, array) => { let scale = request.getUrlKey(item.imgUrlList[0], 'scale'); item.scale = scale ? scale : 1; }) that.setData({ contentList: that.data.contentList.concat(arr) }) } }, res => { console.log(res) } ) }, /** * 用户点击右上角分享 */ onShareAppMessage(Object) { if(Object.from == 'button') { let title = Object.target.dataset.item.content let contentId = Object.target.dataset.item.contentId let imageUrl = Object.target.dataset.item.imgUrlList[0] return { title: title, imageUrl: imageUrl, path: '/pages/circlesDetail/circlesDetail?contentId=' + contentId } } }, focusFun() { let that = this; request.postData( 'app/user/home/focus', {focusUserId: that.data.beVisitedUserId}, res => { that.getInfo(); wx.showToast({ title: '关注成功', icon: 'success', duration: 2000 }) }, res => { console.log(res) } ) }, unfocusFun() { let that = this; request.postData( 'app/user/home/unfocus', {unfocusUserId: that.data.beVisitedUserId}, res => { that.getInfo(); wx.showToast({ title: '已取消关注', icon: 'success', duration: 2000 }) }, res => { console.log(res) } ) }, toCirclesDetail(event) { let contentId = event.currentTarget.dataset.cid; login.ifLogin('../circlesDetail/circlesDetail?contentId=' + contentId) }, handleShow(event) { let contentId = event.currentTarget.dataset.cid ? event.currentTarget.dataset.cid : null; this.setData({ handleStatus: !this.data.handleStatus, contentId: contentId }) }, toReport() { login.ifLogin('../report/report?targetType=Content&targetId=' + this.data.contentId) }, contentCellikeFun(event) { let that = this; let contentId = event.currentTarget.dataset.cid; let index = event.currentTarget.dataset.idx; request.postData( 'app/op/like/cancel', {recordType: 'ContentLike', outBusiId: contentId}, res => { // that.getContentList(); that.data.contentList[index].like = false; that.data.contentList[index].likeCount--; that.setData({ contentList: that.data.contentList }) }, res => { console.log(res) } ) }, contentlikeFun(event) { let that = this; let contentId = event.currentTarget.dataset.cid; let index = event.currentTarget.dataset.idx; request.postData( 'app/op/like', {recordType: 'ContentLike', outBusiId: contentId}, res => { // that.getContentList(); that.data.contentList[index].like = true; that.data.contentList[index].likeCount++; that.setData({ contentList: that.data.contentList }) }, res => { console.log(res) } ) }, getContentList() { let that = this; request.getData( 'app/cont/content/mine', {beVisitedUserId: that.data.beVisitedUserId}, res => { let arr = res.data.data; arr.forEach((item, index, array) => { let scale = request.getUrlKey(item.imgUrlList[0], 'scale'); item.scale = scale ? scale : 1; }) that.setData({ contentList: arr }) }, res => { console.log(res) } ) }, getInfo() { let that = this; request.getData( 'app/user/home/info', {beVisitedUserId: that.data.beVisitedUserId}, res => { that.setData({ info: res.data.data }) }, res => { console.log(res) } ) }, back() { wx.navigateBack({ delta: 1 }) }, })