Laravel-Excel を使用して雄弁なコレクションを .xls ファイルにエクスポートし、サーバーに保存します。そして、laravel のダウンロード応答タイプ、つまりresponse()->download($filePath)を返します。
サーバー コードの単純なバージョン:
function getExportToFile($pId){
$data = array(
array('data1', 'data2'),
array('data3', 'data4')
);
Excel::create('strings', function($excel) use($data) {
$excel->sheet('Sheetname', function($sheet) use($data) {
$sheet->fromArray($data);
});
})->store('xls');
return response()->download(storage_path('exports/strings.xls'));}
クライアント側のアクション ハンドラ:
if(a == Actions.ExportTofile)
{
return new Promise( function(resolve,reject)
{
$.get('/project/export-to-file/' + p1.id).then(
function(a)
{
resolve();
}
);
});
}
ダウンロード応答を処理するためにクライアント側を変更する必要があることは理解していますが、変更方法がわかりません。ダウンロードプロセスを開始するにはどうすればよいですか?
どんな助けでもいただければ幸いです。