Sau*_*shi 0 javascript dompdf laravel vue.js axios
我一直在尝试通过 axios 从我的 Laravel 应用程序下载 PDF,但下载的文件是一个空的 pdf。
我正在使用 DomPdf 创建 pdf 并使用 download.js 下载它,下面是我的代码。
注意:如果我尝试在没有 ajax 请求的情况下下载它,它工作得很好。
拉拉维尔,
return PDF::loadView('print', compact('bill'))->download($bill->number.'.pdf');
Javascript
``axios.get(`/bills/${id}/print` {
responseType: 'blob',Accept: 'application/pdf'
})
.then(response => {
const download = require('@/download');
// @ is just an alias for my root js directory.
download(response.data, `file.pdf`, 'application/pdf');
});``
Run Code Online (Sandbox Code Playgroud)
尝试以下代码:
在 Laravel 控制器中:
$pdf = PDF::loadView('finance.remainingFee', compact('fee', 'time'));
$pdf->setPaper('a4' , 'portrait');
return $pdf->output();
Run Code Online (Sandbox Code Playgroud)
在 Vue 文件中:
axios.get(APP_URL + `api/finance/remainingStudentFee/${fee_id}`, {responseType: 'blob'}).then(response => {
const url = window.URL.createObjectURL(new Blob([response.data]));
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', 'remaining_fee.pdf'); //or any other extension
document.body.appendChild(link);
link.click();
})
.catch(error => {
console.log(error);
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2383 次 |
| 最近记录: |