1.通过
window.location.href =`路径`
2.
this.$http.get(`路径`, { responseType: "arraybuffer" }).then(res => {
if (res.status == 200) {
var blob = new Blob([res.data], {
type: "application/json;charset=UTF-8",
});
var filename = "文件名字.xls";
var a = document.createElement("a");
var url = window.URL.createObjectURL(blob);
a.href = url;
a.download = filename;
var body = document.getElementsByTagName("body")[0];
body.appendChild(a);
a.click();
body.removeChild(a);
window.URL.revokeObjectURL(url);
this.$message.success(`导出成功`);
this.exportDialog = false;
} else {
this.$message.error(`导出失败`);
}
})
3.
// 导入
// 文件校验方法
// beforeAvatarUpload(file) {
// // 通过split方法和fileArr方法获取到文件的后缀名
// let fileArr = file.name.split('.')
// let suffix = fileArr[fileArr.length - 1]
// // 只能导入.xls和.xlsx文件
// if (!/(xls|xlsx)/i.test(suffix)) {
// this.$message('文件格式不正确')
// return false
// }
// // 不能导入大小超过2Mb的文件
// if (file.size > 2 * 1024 * 1024) {
// this.$message('文件过大,请上传小于2MB的文件〜')
// return false
// }
// return true
// },
// // 文件发生改变就会触发的事件
// uploadByJsqd(file) {
// // 判断是否符合beforeAvatarUpload方法中的条件
// if (this.beforeAvatarUpload(file)) {
// this.fileList.name = file.name
// this.fileList.url = ''
// var formdata = new FormData()
// formdata.append('file', file.raw)
// // importDevice:请求接口 formdata:传递参数
// // importDevice(formdata).then((res) => {
// // this.$message({
// // message: res.msg,
// // type: 'success'
// // })
// // this.getList()// 调用表格方法,刷新页面
// // })
// }
// },
4.element
<!-- 上传文件 -->
<el-upload class="upload-demo"
action="路径"
:show-file-list="false"
style="display:none;width:100%"
:on-success="handleUpload"
:on-error="handleError"
ref="uploadcsv"
accept=".xls,.xlsx" // 限制文件
:headers="headtoken"
:before-upload="beforeUpload">
<el-button size="small"
ref="uploadImgBtn"
type="primary">点击上传</el-button>
</el-upload>
// 导入抽检结果,上传文件
handleUpload(res) {
this.loading = false;
if (res.code === 200 && res.message) {
this.$message.success(`导入成功`);
this.loadTable();
} else {
this.$message.error(res.message);
}
},
// 导入出错
handleError() {
this.loading = false;
this.$message.error("导入失败,请重试");
},
beforeUpload(file) {
// this.loading = true;
},
// 限制文件大小 和文件格式(或者用属性accept=".xls,.xlsx")
beforeUpload(file) {
if (file.size / 1024 / 1024 > 200) {
this.$message({
message: '上传文件大小不能超过 200MB!',
type: 'error'
})
return false
}
// 获取文件类型
var test = file.name.substring(file.name.lastIndexOf('.') + 1)
if (test !== 'zip' && test !== 'rar') {
this.$message({
message: '上传文件只能是 zip、rar格式!',
type: 'warning'
})
return false
}
}