GridJs için Özel İndirme Fonksiyonu
GridJs için özel indirme fonksiyonu nasıl uygulanır
GridJs, dosya indirme davranışını özelleştirmenize izin veren esnek bir indirme mekanizması sağlar. Dosya indirme işlemini ihtiyaçlarınıza göre ayarlamak için özel bir indirme fonksiyonu belirleyebilirsiniz.
Özel İndirme Fonksiyonu Ayarlama
GridJs, setFileDownloadCallFunction metodunu kullanarak özel bir indirme fonksiyonu ayarlamanıza imkan tanır. Kullanıcılar indirme düğmesine tıkladığında, bu fonksiyon belirli parametrelerle çağrılır.
Temel Kullanım
// 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);
Fonksiyon Parametreleri
Özel indirme fonksiyonu üç parametre alır:
1. toFileName
- Türü: String
- Açıklama: İndirilecek dosyanın adı
- Örnek:
"myfile.xlsx","rapor.pdf"
2. outputType
- Türü: String
- Açıklama: Çıktı dosya formatı tipi
- Olası Değerler:
Original- Orijinal dosya formatını koruXLSX- Excel formatında dışa aktarPDF- PDF formatında dışa aktarHTML- HTML formatında dışa aktar
3. saveMode
- Türü: String
- Açıklama: Kaydetme hedef modu
- Olası Değerler:
Device- Yerel cihaza indir (varsayılan)GoogleDrive- Google Drive’a kaydetDropbox- Dropbox’a kaydet
İndirme Senaryoları
GridJs farklı kullanıcı eylemlerine dayalı çoklu indirme senaryolarını destekler:
1. Farklı Formatlarda İndir
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. Bulut Depolamaya Kaydet
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);
Notlar
-
Fonksiyon Kaydı: Kullanıcılar indirme fonksiyonuyla etkileşime geçmeden önce
setFileDownloadCallFunctionçağrısını yaptığınızdan emin olun. -
Hata Yönetimi: Özelleştirilmiş indirme fonksiyonunuzda uygun hata yönetimi uygulayarak kullanıcılara geri bildirim sağlayın.
-
Async İşlemler: İndirme mantığınız asenkron işlemler (API çağrıları gibi) içeriyorsa, promise’leri uygun şekilde yönetin.
-
Dosya Adı Uzantısı: Çıktı tipi “Original” değilse, dosya uzantısı otomatik olarak çıktı tipine uygun hale getirilecektir (örneğin
.xlsx,.pdf,.html). -
Varsayılan Davranış: Özelleştirilmiş bir indirme fonksiyonu ayarlamazsanız, GridJs varsayılan indirme davranışını kullanır.