html
<template>
<a-button type="primary" @click="downloadExcel(`${item.title}.xlsx`)">下载模板</a-button>
</template>
<script>
export default {
data() {
return{
//华为obs下载链接
downloadExcelUrl: ''
}
},
methods: {
// 下载模板
downloadExcel(name) {
const iframe = document.createElement('iframe')
iframe.style.display = 'none' // 防止影响页面
iframe.style.height = 0 // 防止影响页面
iframe.src = this.downloadExcelUrl + name
document.body.appendChild(iframe)
// 5分钟之后删除
setTimeout(() => {
iframe.remove()
}, 5 * 60 * 1000)
}
}
}
</script>
注意:
因为是请求外部链接,所以会引起跨域问题
解决方法:
在vue.config.js 中搜索proxyTable,配置一个要代理的图片的域名
参考: https://www.freesion.com/article/2502986072/
devServer: {
proxy: {
'/upload': {
target: 'https://xxx.com/', //跨域链接
changeOrigin: true,
secure: true, // 设置支持https协议的代理
pathRewrite: {
'^/upload': ''
}
},
}
},