import Dialog from "../../miniprogram_npm/@vant/weapp/dialog/dialog" Page({ data: { value: [ ], btns: [ { name: "修改", type: "drafts", success (data) { this.drafts_update(data) } }, { name: "删除", type: "drafts", success (data) { this.drafts_delete(data) } }, { name: "查看", type: "provided", success (data) { this.provided_watch(data) } }, { name: "修改", type: "provided", success (data) { this.provided_update(data) } }, ] }, // 草稿箱删除 drafts_delete (data) { Dialog.confirm({ message: '确认删除当前草稿?', }) .then(() => { this.draftsdelete(data); }) .catch(() => { // on cancel }); }, async draftsdelete (data) { try { await wx.$request({ url: `/order/${data.id}/`, method: "delete" }); let { value } = this.data; value.value.splice(data.order, 1); this.setData({ value }); } catch (err) { wx.$err(err) } }, // 草稿箱修改 drafts_update (data) { wx.navigateTo({ url: "/pages/add/index?type=draftsupdate&data=" + data.id }) }, // 已填报查看 provided_watch (data) { wx.navigateTo({ url: "/pages/add/index?type=watch&data=" + data.id }) }, // 已填报修改 provided_update (data) { wx.navigateTo({ url: "/pages/add/index?type=providedupdate&data=" + data.id }) }, // 按钮组事件 btnsFunc (e) { let { index, id, order } = e.currentTarget.dataset, { btns } = this.data; btns[index]['success'].bind(this)({ id, order }) }, // 数据请求 request_lock: false, async request (data) { try { let { page = 1, totalPage = 1, value = [] } = data; let { category } = this.data; if (page > totalPage || this.request_lock) return false; let resA = await wx.$request({ url: "/order/list/", method: "get", data: { category, limit: 10, page } }); ++page; totalPage = resA.totalPage; value = value.concat(resA.data); this.setData({ value: { page, totalPage, value } }) this.request_lock = false; } catch (err) { wx.$err(err); this.request_lock = false } }, onLoad: async function (options) { try { let titleArr = [{ title: "草稿箱", type: "drafts", category: 0 }, { title: "已填报", type: "provided", category: 1 }]; let filter_title = titleArr.filter(item => item.type == options.data); this.setData({ ...filter_title[0] }) } catch (err) { wx.$err(err) } }, onReady: function () { }, onShow: function () { this.request({}) }, onHide: function () { }, onUnload: function () { }, onPullDownRefresh: function () { }, onReachBottom: function () { this.request(this.data.value) } })