import { initData } from '@/api/data' export default { data() { return { loading: true, data: [], page: 0, size: 10, total: 0, url: '', params: {}, query: {}, time: 50, isAdd: false, downloadLoading: false } }, methods: { async init(val) { if (!await this.beforeInit()) { return } if (val==1){ this.params.xfProjectnum="" this.params.xfStartDate="" } let params = {} if(this.url == "api/xySalary"){ params = {...this.params,sort:'salaryMonth,desc'} }else{ params = {...this.params} } return new Promise((resolve, reject) => { this.loading = true initData(this.url, params).then(res => { this.total = res.totalElements this.data = res.content setTimeout(() => { this.loading = false }, this.time) resolve(res) }).catch(err => { this.loading = false reject(err) }) }) }, async init2(val) { this.params.page = this.page if (val==1){ this.params.xfProjectnum="" this.params.xfStartDate="" } let params = {} if(this.url == "api/xySalary"){ params = {...this.params,sort:'salaryMonth,desc'} }else{ params = {...this.params} } return new Promise((resolve, reject) => { this.loading = true initData(this.url, params).then(res => { this.total = res.totalElements this.data = res.content setTimeout(() => { this.loading = false }, this.time) resolve(res) }).catch(err => { this.loading = false reject(err) }) }) }, beforeInit() { return true }, pageChange(e) { this.page = e - 1 if(this.url=='api/douyinAfterSales'){ this.init() } else{ this.init2() } }, sizeChange(e) { this.page = 0 this.size = e if(this.url=='api/douyinAfterSales'){ this.init(1) } else{ this.init2(1) } }, // 预防删除第二页最后一条数据时,或者多选删除第二页的数据时,页码错误导致请求无数据 dleChangePage(size) { if (size === undefined) { size = 1 } if (this.data.length === size && this.page !== 0) { this.page = this.page - 1 } }, toQuery(val) { this.page = 0 this.init(val) } } }