关于前端下载附件的方法

73 阅读1分钟
 <el-link
            style="margin-left: 10px"
            v-if="form && form.resourceOssUrla "
            type="primary"
            size="mini"
            @click="showFile(form.resourceOssUrla)"
            ><i class="el-icon-paperclip" /> 附件</el-link
          >
          <div v-else>/</div>
async showFile(path) {
const a = document.createElement('a');
a.href = path;
a.target = '*blank';
// 获取请求路径
a.href = (await getPrUrl({ key: path })).data;
// 跨域不起作用
a.download = this.getFileName(path);
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
},
// 获取文件名称
getFileName(path) {
const arr = path.split('/');
const n = arr\[arr.length - 1];
const resut = n.slice(n.indexOf('.*.') + 1);
return resut;
},