"use strict"; var select = []; var app = getApp(); Component({ data: {}, ready: function () { if(app.globalData.oriList.length) this.init(); }, methods: { init(){ var _this = this; select = []; var list = [ { date: "2021-04-07", title: "大唐不夜城", id: 0, chirld: [] } ]; for (let i = 0; i < app.globalData.oriList.length; i++) { const ele = app.globalData.oriList[i]; let sList = ele.clips.map((v, o) => { return { id: i + '-' + o, selectIndex: -1, duration: _this.format(v.duration), secDuration: v.duration, videoWidth: v.videoWidth, videoHeight: v.videoHeight, name: v.name, snaps: v.snaps, video: v.video, thumbUrl: v.thumbUrl, voice: ele.voice }; }) list[0].chirld.push(...sList) } _this.setData({ list: list }); }, selectItem: function () { var data = arguments[0].currentTarget.dataset; var list = JSON.parse(JSON.stringify(this.data.list)); var selectItem = list[data.pindex].chirld[data.index]; this.downFile(selectItem).then(res => { selectItem.type = "video"; var selectList = []; var push = true; for (var i = 0; i < select.length; i++) { var v = select[i]; if (v.id !== data.id) continue; list[v.pindex].chirld[v.index].selectIndex = -1; select.splice(i, 1); push = false; break; } select.length < 11 && push && select.push(data); for (var i = 0; i < select.length; i++) { var v = select[i]; list[v.pindex].chirld[v.index].selectIndex = i + 1; selectList.push(list[v.pindex].chirld[v.index]) } this.setData({ list: list }); this.triggerEvent('select', selectList); }); }, format(s) { let sco = Math.floor(s % 60); let min = Math.floor(s / 60); let hour = Math.floor(min / 60); let time = hour > 9 ? hour : "0" + hour; time += min > 9 ? ":" + min : ":0" + min; time += sco > 9 ? ":" + sco : ":0" + sco; return time }, downFile(v) { return new Promise((resolve, reason) => { resolve(v); }) } } });