// pages/room/add.js const api = require('../../config/api.js'); const util = require('../../utils/util.js'); Page({ /** * 页面的初始数据 */ data: { sceneList: [{name:'美国',id:0},{name:'中国',id:1},{name:'巴西',id:2},{name:'本',id:3},], hostList: [{name:'我的测试主持',id:0},{name:'我的测试主持1',id:1},{name:'我的测试主持2',id:2},{name:'我的测试主持3',id:3},], scene: 0, host: 0, assistant:0, dateMinute: '', assistantList: [{name:'小黑',id:0},{name:'小白',id:1},{name:'小黄',id:2},{name:'小蓝',id:3},], detail:{ name:'', scene:'', brandId:'', host:'', anchorUserId:'', assistant:'', assistantUserId:'', effectiveStartTime:'', effectiveEndTime:'', } }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { this.getSceneList() }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { }, getSceneList(){ }, pickerChange: function(e) { const abj ={ 'scene':this.data.sceneList, 'host':this.data.hostList, 'assistant':this.data.assistantList, } const { type, name } = e.currentTarget.dataset let item = abj[name][e.detail.value] let detail = this.data.detail detail[type] = e.detail.value, detail[name] = item.name, this.setData({ [name]: item.id, detail, },()=>{ console.log('picker值为',type, name,detail,item,) }) }, sceneChange: function(e) { let index = e.detail.value console.log('picker值为',index) this.setData({ index: e.detail.value }) }, hostChange: function(e) { let index = e.detail.value console.log('picker值为',index) this.setData({ index: e.detail.value }) }, assistantChange: function(e) { let index = e.detail.value console.log('picker值为',index) this.setData({ index: e.detail.value }) }, /** * 年月日时分选择类型的回调函数,可以在该函数得到选择的时间 */ selectDateMinuteChange(ev) { const { type } = ev.currentTarget.dataset let detail = this.data.detail detail[type] = ev.detail.value //判断大小 console.log(detail) if(detail.effectiveEndTime && detail.effectiveStartTime){ let value = new Date(detail.effectiveEndTime) - new Date(detail.effectiveStartTime); console.log(value,detail.effectiveEndTime ,detail.effectiveStartTime ) if(value<0){ return wx.showToast({ title: '结束时间大于开始时间', icon: 'error', duration: 1000 }) } } this.setData({ detail }) }, bindMultiPickerChange: function (e) { console.log('picker发送选择改变,携带值为', e.detail.value) this.setData({ multiIndex: e.detail.value }) }, sbmit: async function(){ const {name,id,brandId,anchorUserId,effectiveStartTime,effectiveEndTime,assistantUserId} = this.data.detail let err = '' if(!brandId){ err = '请选择直播场景' }else if(!anchorUserId){ err = '请选择主持人' }else if(!anchorUserId){ err = '请选择主持人' }else if(!effectiveStartTime){ err = '请选择开始时间' }else if(!effectiveEndTime){ err = '请选择结束时间' }else if(!assistantUserId){ err = '请选择助理' } if(err){ return wx.showToast({ title: err, icon: 'error', duration: 1000 }) } let res = await util.request(api.createOrUpdate, { ...this.data.detail },"POST") if (res.errno == 0) { return res.data } else if (res.errno == 1) { return false } } })