vue+element的表格导出和导入
1.表格导出成excell
这是我的代码
const submitForm = async (formEl: FormInstance | undefined) => {
if (!formEl) return
await formEl.validate((valid: any, fields: any) => {
if (valid) {
const sDay = new Date(ruleForm.value.dateValue[0])
const eDay = new Date(ruleForm.value.dateValue[1])
const sDate = sDay.getFullYear() + '-' + (Number(sDay.getMonth()) + 1) + '-' + sDay.getDate() + ' ' + '00:00:00'
const eDate = eDay.getFullYear() + '-' + (Number(eDay.getMonth()) + 1) + '-' + eDay.getDate() + ' ' + '00:00:00'
// console.log(sDate, eDate);
window.open(`${requestList.SETTLEMENT_REPORT_OK}?&startTime=${sDate}&endTime=${eDate}`);
} else {
console.log(fields)
}
})
}
2表格导入
<el-button type="success" @click="importBtn">导入报表</el-button>
<input ref="uploadInput" style="display:none" type="file" class="dl-none" name="icon" @change="dealfilechange" />
//导入报表
const importBtn = () => {
let oBtn = uploadInput.value as HTMLInputElement;
oBtn.click();
}
// 导入物流单
const uploadInput = ref<HTMLElement | null>(null);
const dealfilechange = (e: Event) => {
const input = e.target as HTMLInputElement;
let files = input.files;
if (files) {
//console.log(files[0])
let files2 = Array.from(files)
const formdata = new FormData();
formdata.append('file', files2[0])
console.log(formdata,'===========');
proxy.$axios.post(requestList.SETTLEMENT_IMPORT, formdata).then((res: any) => {
if (res.data.code == 0) {
getList()
} else {
proxy.$message({
message: res.data.tip,
type: "error",
});
}
});
}
}