|
|
// miniprogram/pages/detail/detail.js
|
|
|
var util = require('../../utils/util.js')
|
|
|
const app = getApp();
|
|
|
const db=wx.cloud.database().collection('user')
|
|
|
const dd=wx.cloud.database()
|
|
|
const db2=wx.cloud.database().collection('community')
|
|
|
Page({
|
|
|
|
|
|
/**
|
|
|
* 页面的初始数据
|
|
|
*/
|
|
|
data: {
|
|
|
main_top:'',
|
|
|
openid:'',
|
|
|
currentdate:'',
|
|
|
canIUse: wx.canIUse('button.open-type.getUserInfo'),
|
|
|
userInfo: {},
|
|
|
hasUserInfo: false,
|
|
|
canIUseGetUserProfile: false,
|
|
|
imgList: [],
|
|
|
head_cut:'',
|
|
|
authorname:'',
|
|
|
content:[],
|
|
|
comment:[],
|
|
|
commentinput:'',
|
|
|
showtop:false
|
|
|
},
|
|
|
|
|
|
formSubmit(e) {
|
|
|
const that= this
|
|
|
var input_content=e.detail.value.com_content
|
|
|
var _time = util.formatTime(new Date())
|
|
|
if(!input_content){
|
|
|
wx.showToast({
|
|
|
title: '请输入评论内容!',
|
|
|
icon:'none'
|
|
|
})
|
|
|
return
|
|
|
}
|
|
|
const _=dd.command
|
|
|
dd.collection('comment').add({
|
|
|
data: {
|
|
|
commentid: that.data.content._id,
|
|
|
username:that.data.userInfo.nickName,
|
|
|
img:that.data.userInfo.avatarUrl,
|
|
|
content:input_content,
|
|
|
date:_time
|
|
|
},
|
|
|
success: function(res) {
|
|
|
// res 是一个对象,其中有 _id 字段标记刚创建的记录的 id
|
|
|
console.log(res)
|
|
|
wx.showToast({
|
|
|
title: '评论成功!',
|
|
|
})
|
|
|
var array=[{
|
|
|
commentid: that.data.content._id,
|
|
|
username:that.data.userInfo.nickName,
|
|
|
img:that.data.userInfo.avatarUrl,
|
|
|
content:input_content,
|
|
|
date:_time
|
|
|
}]
|
|
|
that.setData({
|
|
|
comment:array.concat(that.data.comment),
|
|
|
commentinput:''
|
|
|
})
|
|
|
db2.doc(that.data.content._id).update({
|
|
|
data:{
|
|
|
comment:_.inc(1)
|
|
|
}
|
|
|
}).then()
|
|
|
}
|
|
|
})
|
|
|
|
|
|
},
|
|
|
preview(event) {
|
|
|
|
|
|
let currentUrl = event.currentTarget.dataset.src
|
|
|
const that=this
|
|
|
wx.cloud.getTempFileURL({
|
|
|
fileList:[currentUrl],
|
|
|
success(res){
|
|
|
console.log(res)
|
|
|
const a = `imgList[${0}]`
|
|
|
that.setData({
|
|
|
[a]:res.fileList[0].tempFileURL
|
|
|
})
|
|
|
console.log(that.data.imgList)
|
|
|
wx.previewImage({
|
|
|
current: currentUrl, // 当前显示图片的http链接
|
|
|
urls: that.data.imgList // 需要预览的图片http链接列表
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
|
|
|
},
|
|
|
getUserProfile(e) {
|
|
|
// 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认
|
|
|
// 开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
|
|
|
const that= this
|
|
|
if(that.data.hasUserInfo){
|
|
|
console.log(that.data.userInfo)
|
|
|
}else{
|
|
|
wx.getUserProfile({
|
|
|
desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
|
|
|
success: (res) => {
|
|
|
that.setData({
|
|
|
userInfo: res.userInfo,
|
|
|
hasUserInfo: true
|
|
|
})
|
|
|
wx.setStorageSync('userInfo', that.data.userInfo)
|
|
|
db.add({
|
|
|
data:{
|
|
|
_id:that.data.openid,
|
|
|
nickName:that.data.userInfo.nickName,
|
|
|
avatarUrl:that.data.userInfo.avatarUrl,
|
|
|
city:that.data.userInfo.city,
|
|
|
collect:[],
|
|
|
like:[]
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
|
|
|
},
|
|
|
onShow:function(){
|
|
|
const that=this
|
|
|
var _time = util.formatTime(new Date())
|
|
|
that.setData({
|
|
|
currentdate:_time
|
|
|
})
|
|
|
},
|
|
|
/**
|
|
|
* 生命周期函数--监听页面加载
|
|
|
*/
|
|
|
onLoad: function (options) {
|
|
|
const that= this
|
|
|
if (wx.getUserProfile) {
|
|
|
this.setData({
|
|
|
canIUseGetUserProfile: true
|
|
|
})
|
|
|
}
|
|
|
var openid=wx.getStorageSync('openid')
|
|
|
that.setData({
|
|
|
content:JSON.parse(options.content),
|
|
|
comment:[],
|
|
|
openid:openid
|
|
|
})
|
|
|
db.doc(that.data.content._openid).get({
|
|
|
success:function(res){
|
|
|
console.log(res.data)
|
|
|
that.setData({
|
|
|
head_cut:res.data.avatarUrl,
|
|
|
authorname:res.data.nickName
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
dd.collection('comment').orderBy("date","desc").where({
|
|
|
commentid:that.data.content._id
|
|
|
}).get({
|
|
|
success: function(res) {
|
|
|
// res.data 是包含以上定义的两条记录的数组
|
|
|
wx.showLoading({
|
|
|
title: '加载中',
|
|
|
mask:'true'
|
|
|
})
|
|
|
that.setData({
|
|
|
comment:res.data,
|
|
|
}, () => {
|
|
|
wx.hideLoading()
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
|
|
|
var arr=wx.getStorageSync('userInfo')
|
|
|
console.log(arr)
|
|
|
that.setData({
|
|
|
userInfo:arr
|
|
|
})
|
|
|
|
|
|
},
|
|
|
lower(e){
|
|
|
const that=this
|
|
|
var x=that.data.comment.length
|
|
|
let old_data = that.data.comment
|
|
|
wx.showLoading({
|
|
|
title: '加载中...',
|
|
|
mask:'true'
|
|
|
})
|
|
|
var _=dd.command
|
|
|
dd.collection('comment').where({
|
|
|
commentid:that.data.content._id,
|
|
|
date:_.lt(that.data.currentdate)
|
|
|
}).orderBy('date','desc').skip(x) // 限制返回数量为 20 条
|
|
|
.get()
|
|
|
.then(res => {
|
|
|
console.log(res.data)
|
|
|
// 利用concat函数连接新数据与旧数据
|
|
|
if(res.data.length==0){
|
|
|
wx.hideLoading()
|
|
|
wx.showToast({
|
|
|
title: '已经到底了!',
|
|
|
icon:'none'
|
|
|
})
|
|
|
return
|
|
|
}
|
|
|
this.setData({
|
|
|
comment: old_data.concat(res.data),
|
|
|
})
|
|
|
wx.hideLoading({
|
|
|
success: (res) => {},
|
|
|
})
|
|
|
})
|
|
|
.catch(err => {
|
|
|
console.error(err)
|
|
|
})
|
|
|
}
|
|
|
}) |