客戶只要求下載csv文件:
DOM部分:
<el-table-column prop="path" align="center" label="Action"> <template slot-scope="scope"> <el-link v-if="scope.row.status == 2" class="export" @click="openPdf(scope.row)" :underline="false" >{{ $t('events.download') }}</el-link > <el-link v-else :underline="false" style="cursor: text" >--</el-link > </template> </el-table-column>
JS部分:
使用a標簽可以在當前窗口打開,不會出現閃屏
openPdf(row) {
// status === 2說明后端返回的地址是成功的 if (row.status === 2) { const a = document.createElement('a') a.href = row.path // 這里的請求方式為get,如果需要認證,接口上需要帶上token a.click() return false } else { return false } },
打開PDF:后端返回pdf的鏈接:
openPdf(row) { if (row.status === 2) { window.open(`${row.path}`) } else { return false } }
