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.

108 lines
3.1 KiB

import Dialog from '../../../../miniprogram_npm/@vant/weapp/dialog/dialog';
const app = getApp()
Component({
data: {
eventList: [],
result: [],
boxArr: new Array(2).fill(undefined),
show: false,
tempLate: ['一', '二', '三', '四', '五', '六', ]
},
methods: {
startCp() {
if (this.data.result.length < 2) {
Dialog.alert({
message: '必须选择两个',
context: this
})
return
}
wx.setStorageSync('eventData', this.data.boxArr)
wx.navigateTo({
url: `/contrastPackages/eventRatio/index`,
})
},
onClose() {
this.setData({
show: false
})
},
add() {
wx.setStorageSync('eventData', this.data.boxArr)
wx.navigateTo({
url: '/contrastPackages/addEvent/index',
})
},
switchEvent(e) {
let index = e.currentTarget.dataset.index
this.data.boxArr.splice(index, 1)
this.add()
},
del(e) {
let index = e.currentTarget.dataset.index
let result = [...this.data.result]
let boxArr = []
result.splice(index, 1)
for (let i of result) {
boxArr.push(JSON.parse(i))
}
boxArr.length = 2
this.setData({
result: result,
boxArr: boxArr
})
wx.setStorageSync('eventData', this.data.boxArr)
},
onChange(event) {
const {
detail
} = event
if (detail.length > 2) {
Dialog.alert({
message: '至多二个',
context: this
})
return
}
let boxArr = []
for (let i of detail) {
let obj = JSON.parse(i)
boxArr.push(obj)
}
boxArr.length = 2
this.setData({
result: detail,
boxArr: boxArr
})
},
},
lifetimes: {
attached() {
app.globalData.request({
action: 'getEventList',
token: wx.getStorageSync('token'),
sType: 'HotLibraryC',
iPageIndex: 1,
iPageSize: 4,
sTimeType: 20
}).then(res => {
this.setData({
eventList: res
})
let x = wx.getStorageSync('eventData')
let result = x.map(ele => {
return JSON.stringify(ele)
})
result = result.filter(ele=>ele!='null')
if (wx.getStorageSync('eventData')) {
x.length = 2
this.setData({
boxArr: x,
result
})
}
})
},
},
})