|
@@ -1,9 +1,18 @@
|
|
|
|
+const uploadJS = require('../../mixin/upload.js')
|
|
|
|
+const { postAddNews } = require('./api/index')
|
|
|
|
+
|
|
Page({
|
|
Page({
|
|
|
|
|
|
/**
|
|
/**
|
|
* 页面的初始数据
|
|
* 页面的初始数据
|
|
*/
|
|
*/
|
|
- data: {},
|
|
|
|
|
|
+ data: {
|
|
|
|
+ form: {
|
|
|
|
+ 'track_content': '',
|
|
|
|
+ 'track_img_url': []
|
|
|
|
+ },
|
|
|
|
+ track_img_url_max: 6
|
|
|
|
+ },
|
|
|
|
|
|
/**
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
* 生命周期函数--监听页面加载
|
|
@@ -39,25 +48,89 @@ Page({
|
|
onUnload() {
|
|
onUnload() {
|
|
|
|
|
|
},
|
|
},
|
|
-
|
|
|
|
- /**
|
|
|
|
- * 页面相关事件处理函数--监听用户下拉动作
|
|
|
|
- */
|
|
|
|
- onPullDownRefresh() {
|
|
|
|
-
|
|
|
|
|
|
+ ...uploadJS,
|
|
|
|
+ uploadCallBack(res) {
|
|
|
|
+ const temp = res.map(item => {
|
|
|
|
+ return {
|
|
|
|
+ 'url': item.url,
|
|
|
|
+ 'formkey': item.formkey
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ let tempForm = {}
|
|
|
|
+ let formkey = ''
|
|
|
|
+ if (temp.length > 0) {
|
|
|
|
+ formkey = temp[0].formkey
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ switch (formkey) {
|
|
|
|
+ case 'track_img_url':
|
|
|
|
+ const formkeyData = this.data.form[formkey]
|
|
|
|
+ tempForm[`form.${formkey}`] = formkeyData.concat(...temp)
|
|
|
|
+ break
|
|
|
|
+ default:
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (Object.keys(tempForm).length > 0) {
|
|
|
|
+ this.setData(tempForm)
|
|
|
|
+ }
|
|
},
|
|
},
|
|
|
|
+ handleInput(e) {
|
|
|
|
+ const { value } = e.detail
|
|
|
|
|
|
- /**
|
|
|
|
- * 页面上拉触底事件的处理函数
|
|
|
|
- */
|
|
|
|
- onReachBottom() {
|
|
|
|
|
|
+ this.setData({
|
|
|
|
+ 'form.track_content': value.trim()
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ handleCancel() {
|
|
|
|
+ wx.navigateBack({
|
|
|
|
+ delta: 1
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getForm() {
|
|
|
|
+ const { track_content, track_img_url } = this.data.form
|
|
|
|
|
|
|
|
+ return {
|
|
|
|
+ track_content: track_content,
|
|
|
|
+ track_img_url: track_img_url.map(item => item.url)
|
|
|
|
+ }
|
|
},
|
|
},
|
|
|
|
+ verify() {
|
|
|
|
+ let errorList = []
|
|
|
|
+ const { track_content, track_img_url } = this.data.form
|
|
|
|
|
|
- /**
|
|
|
|
- * 用户点击右上角分享
|
|
|
|
- */
|
|
|
|
- onShareAppMessage() {
|
|
|
|
|
|
+ if (!track_content) {
|
|
|
|
+ errorList.push('请写下此刻的想法')
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (track_img_url.length < 1) {
|
|
|
|
+ errorList.push('请上传图片')
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ return errorList
|
|
|
|
+ },
|
|
|
|
+ async onSubmit() {
|
|
|
|
+ const temp = this.getForm()
|
|
|
|
+ const verifyList = this.verify()
|
|
|
|
+
|
|
|
|
+ if (verifyList.length >= 2) {
|
|
|
|
+ wx.showToast({
|
|
|
|
+ title: verifyList[0],
|
|
|
|
+ icon: 'none'
|
|
|
|
+ })
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ try {
|
|
|
|
+ const { status, msg } = await postAddNews(temp)
|
|
|
|
+ if (status) {
|
|
|
|
+ wx.redirectTo({
|
|
|
|
+ url: '/pages/news/news'
|
|
|
|
+ })
|
|
|
|
+ } else {
|
|
|
|
+ wx.showToast({
|
|
|
|
+ title: msg,
|
|
|
|
+ icon: 'none'
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ } catch (err) {}
|
|
}
|
|
}
|
|
})
|
|
})
|