html部分
<el-button type="warning" icon="el-icon-download" size="mini" :disabled="!multiple" @click="handleExport">导出</el-button>
<el-checkbox v-model="checkAll" class="importPut">导出所有数据</el-checkbox>
js部分
data(){return{ }}里面(有部分用不到的可删掉):
searchData: { // 查询参数
pageNum: 1, pageSize: 5, userId: undefined, buildingId: undefined, communityId: undefined,
merchantId: undefined, roomNo: undefined, unitId: undefined,
data: { mobilePhone: undefined, residentName: undefined }
},
methods:{}里面:
// 导出按钮操作
handleExport() {
const searchData = this.searchData
if (this.checkAll) {
searchData.pageNum = undefined
searchData.pageSize = undefined
searchData.export = 'all'
}
this.$confirm('是否确认导出小区信息?', '警告',
{ confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }
).then(function() {
exportResident(searchData).then(res => {
// console.log(res)
const sysDate = moment(new Date()).format('YYYY-MM-DDHHmm')
// console.log(sysDate)
fileDownload(res, sysDate + '住户信息表.xlsx')
searchData.export = undefined
})
.catch(err => {
console.log(err)
})
}).catch(function() {
})
},
api部分
// 导出住户信息
export function exportResident(query) {
return request({
url: '/sys/resident/export',
method: 'get',
responseType: 'arraybuffer',
params: query
})
}
css部分
.importPut{
margin-top: 5px;
}