vedo che la questione Github dice che questo non è attualmente supportato, ma sembra relativamente semplice da forgiare questo progetto e piegarlo alle tue esigenze. Tutti gli fnError =
che troverai in una ricerca Cmd + F
all'interno di fileinput.js
sono dove devi cercare.
Prendete per esempio qui: https://github.com/kartik-v/bootstrap-fileinput/blob/d5ed3ee989edbd5d67b8cf4bdadc9f3c18609965/js/fileinput.js#L1897
Questo è per il batch di caricamento file che attualmente appare così:
fnError = function (jqXHR, textStatus, errorThrown) {
var outData = self._getOutData(jqXHR), errMsg = self._parseError(jqXHR, errorThrown);
self._showUploadError(errMsg, outData, 'filebatchuploaderror');
self.uploadFileCount = total - 1;
if (!self.showPreview) {
return;
}
self._getThumbs().each(function() {
var $thumb = $(this), key = $thumb.attr('data-fileindex');
$thumb.removeClass('file-uploading');
if (self.filestack[key] !== undefined) {
self._setPreviewError($thumb);
}
});
self._getThumbs().removeClass('file-uploading');
self._getThumbs(' .kv-file-upload').removeAttr('disabled');
self._getThumbs(' .kv-file-delete').removeAttr('disabled');
};
mi piacerebbe provare modificando questo:
fnError = function (jqXHR, textStatus, errorThrown) {
if (!myError.equals(textStatus)) { // A service-like impl. injection would be sexier
var outData = self._getOutData(jqXHR), errMsg = self._parseError(jqXHR, errorThrown);
self._showUploadError(errMsg, outData, 'filebatchuploaderror');
self.uploadFileCount = total - 1;
if (!self.showPreview) {
return;
}
self._getThumbs().each(function() {
var $thumb = $(this), key = $thumb.attr('data-fileindex');
$thumb.removeClass('file-uploading');
if (self.filestack[key] !== undefined) {
self._setPreviewError($thumb);
}
});
self._getThumbs().removeClass('file-uploading');
self._getThumbs(' .kv-file-upload').removeAttr('disabled');
self._getThumbs(' .kv-file-delete').removeAttr('disabled');
} else {
self._ajaxSubmit(fnBefore, fnSuccess, fnComplete, function() {
// TODO: Second time failure - handle recursively or differently? :-)
);
}
};
Spero che questo ti aiuti!
Puoi fornire demo in plunkr perché il sito plug-in non è disponibile al momento –
@PareshGami Non riesco a creare uno snippet adesso, ma in fondo è esattamente quello che dovrebbe fare. Tuttavia, ho anche chiesto a Kartik e lui ha risposto che questo non è attualmente possibile: https://github.com/kartik-v/bootstrap-fileinput/issues/637 –
@ FlorianMüller è ancora irrisolto per te? Immagino che https://github.com/kartik-v/bootstrap-fileinput/blob/master/js/fileinput.js#L1534 sia dove dovresti essere in grado di scrivere la tua retry-logic abbastanza facilmente :-) – Angad