纸通宝小程序
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.
 

133 lines
3.7 KiB

// pages/moment/create/index.js
const request = require('../../../utils/request') //导入模块
const util = require('../../../utils/util')
const event = require('../../../utils/event.js')
Page({
/**
* 页面的初始数据
*/
data: {
form:{},
requesting: false,
tagList:[]
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
if(options.barId){
this.data.form.paperBarId = options.barId
}
request.get('/information-center/get/label-list').then(result => {
//成功回调
this.setData({ tagList: result.data })
})
if(options.id){
wx.showLoading({ title: '加载中', mask: true })
request.get('/information-center/get/post-detail/' + options.id).then(result => {
// imgUrlList
var fileList = []
if (result.data.imgUrlList && result.data.imgUrlList.length) {
result.data.imgUrlList.forEach(element => {
fileList.push({ url: element, status: 8 })
})
}
// Tags
if(this.data.tagList.length > 0 && result.data.labelList && result.data.labelList.length){
for (let index = 0; index < this.data.tagList.length; index++) {
console.log(this.data.tagList)
for (let i = 0; i < result.data.labelList.length; i++) {
if(this.data.tagList[index].name == result.data.labelList[i]){
this.data.tagList[index].check = true
break
}
}
}
}
this.setData({
form: result.data,
fileList: fileList,
tagList: this.data.tagList
})
wx.hideLoading()
}).catch(err => {
//异常回调
wx.hideLoading()
})
}
},
tagChange: function(e){
var item = this.data.tagList[e.target.dataset.index]
item.check = !item.check
this.setData({
['tagList[' + e.target.dataset.index + ']']: item
})
},
bindInput: function (e) {
this.data.form[e.target.id] = e.detail.value
},
onImageChange: function (e) {
if (e.detail) {
var list = []
e.detail.forEach(element => {
if (!util.isEmpty(element.url)) {
list.push(element.url)
}
})
this.data.form['imgUrlList'] = list
}
},
submitForm: function(){
if(this.data.requesting){
return
}
if(util.isEmpty(this.data.form.title)){
util.showToast('请输入标题')
return
}
if(util.isEmpty(this.data.form.content)){
util.showToast('请输入内容')
return
}
var tags = []
this.data.tagList.forEach(element => {
if (element.check) {
tags.push(element.id)
}
})
this.data.form['labelIdList'] = tags
wx.showLoading({
title: '处理中',
mask: true
})
this.data.requesting = true
if(util.isEmpty(this.data.form.id)){
request.post('/information-center/post', this.data.form).then(result => {
//成功回调
wx.hideLoading()
event.emit('EventMessage', { what: 501, desc: 'PostChange' })
util.showBackToast('发帖成功')
}).catch(err => {
//异常回调
wx.hideLoading()
this.data.requesting = false
util.showToast(err)
})
} else {
request.post('/information-center/update/post/' + this.data.form.id, this.data.form).then(result => {
//成功回调
wx.hideLoading()
event.emit('EventMessage', { what: 501, desc: 'PostChange' })
util.showBackToast('编辑成功')
}).catch(err => {
//异常回调
wx.hideLoading()
this.data.requesting = false
util.showToast(err)
})
}
}
})