GridJsのカスタムダウンロード機能
Contents
[
Hide
]
GridJsにおけるカスタムダウンロード関数の実装方法
GridJsは、ファイルのダウンロード動作をカスタマイズできる柔軟なダウンロードメカニズムを提供します。要求に応じてカスタムダウンロード関数を設定できます。
カスタムダウンロード関数の設定
GridJsはsetFileDownloadCallFunctionメソッドを提供し、カスタムダウンロード関数を設定します。ユーザーがダウンロードボタンをクリックすると、この関数が特定のパラメーターとともに呼び出されます。
基本的な使い方
// Define your custom download function
function customDownloadHandler(toFileName, outputType, saveMode) {
console.log('File Name:', toFileName);
console.log('Output Type:', outputType);
console.log('Save Mode:', saveMode);
// Implement your custom download logic here
// For example: upload to cloud storage, save to custom location, etc.
}
// Set the custom download function
xs.setFileDownloadCallFunction(customDownloadHandler);
関数のパラメータ
カスタムダウンロード関数は3つのパラメータを受け取ります:
1. toFileName
- タイプ: 文字列
- 説明: ダウンロードするファイルの名前
- 例:
"myfile.xlsx","report.pdf"
2. outputType
- タイプ: 文字列
- 説明: 出力ファイルフォーマットの種類
- 可能な値:
Original- 元のファイル形式を維持XLSX- Excel形式でエクスポートPDF- PDF形式でエクスポートHTML- HTML形式でエクスポート
3. saveMode
- タイプ: 文字列
- 説明: 保存先モード
- 可能な値:
Device- ローカルデバイスにダウンロード(デフォルト)GoogleDrive- Googleドライブに保存Dropbox- Dropboxに保存
ダウンロードシナリオ
GridJsはさまざまなユーザー操作に基づくダウンロードシナリオをサポートします:
1. 異なるフォーマットとしてダウンロード
function customDownloadHandler(toFileName, outputType, saveMode) {
switch(outputType) {
case 'Original':
// Handle original format download
downloadAsOriginal(toFileName);
break;
case 'XLSX':
// Handle Excel format download
downloadAsExcel(toFileName);
break;
case 'PDF':
// Handle PDF format download
downloadAsPDF(toFileName);
break;
case 'HTML':
// Handle HTML format download
downloadAsHTML(toFileName);
break;
}
}
xs.setFileDownloadCallFunction(customDownloadHandler);
2. クラウドストレージに保存
function customDownloadHandler(toFileName, outputType, saveMode) {
if (saveMode === 'GoogleDrive') {
// Implement Google Drive upload logic
uploadToGoogleDrive(toFileName, outputType);
} else if (saveMode === 'Dropbox') {
// Implement Dropbox upload logic
uploadToDropbox(toFileName, outputType);
} else {
// Default: download to device
downloadToDevice(toFileName, outputType);
}
}
xs.setFileDownloadCallFunction(customDownloadHandler);
メモ
-
機能登録:ユーザーがダウンロード機能を操作する前に
setFileDownloadCallFunctionを呼び出してください。 -
エラー処理:カスタムダウンロード関数には適切なエラー処理を必ず実装し、ユーザーにフィードバックしてください。
-
非同期操作:API呼び出しなど非同期操作を含むダウンロードロジックの場合、約束(Promise)の適切な処理を行ってください。
-
ファイル名拡張子:出力タイプが"Original"でない場合、ファイル拡張子は出力タイプに自動的に合わせて調整されます(例:.xlsx, .pdf, .html)。
-
デフォルトの挙動:カスタムダウンロード関数を設定しない場合、GridJsはデフォルトのダウンロード動作を使用します。