2016-07-11 90 views
0

dropzone.jsライブラリを使用していて、ちょっと見渡して再生していて、maxfilesexceeded eventを起動できません。私は情報のためのHow to limit the number of dropzone.js files uploaded?のポストを見て、ライブラリの最新バージョンに更新しましたが、イベントはまだ消えません。dropzone.js maxfilesexceededイベントが起動しない

私は上記のようにinit()関数でリスナーを初期化しています。私はmaxfilesreachedイベントをキャッチすることができていますが、maxfilesexceededイベントを除いて期待通りではないmaxfilesexceededイベント

$scope.fileUploadConfig = { 
    options: { 
     url: uploadFileURL, 
     maxThumbnailFilesize: 200, 
     maxFiles: 5, 
     uploadMultiple: false, 
     acceptedFiles: "application/vnd.oasis.opendocument.text,application/rtf,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel,.xls,.xlsx,application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation,.ppt,.pptx,image/*,.mp3,.m4a,.ogg,.wav,.wma", 
     addRemoveLinks: true, 
     paramName: "file", 
     dictRemoveFile: "Remove", 
     clickable: true, 
     previewTemplate: $("#dropzone-preview-template").html(), 
     init: function() { 
      var instance = this, 
       selectedPageId = 0; 

      instance.on("success", function(event, data) { 
       /* ... */ 
      }); 

      instance.on("addedfile", function() { 
       /* ... */ 
      }); 

      instance.on("removedfile", function(file) { 
       /* ... */ 
      }); 

      instance.on("maxfilesreached", function(file) { 
       alert("MAX_FILES_REACHED"); 
      }); 

      instance.on("maxfilesexceeded", function(file) { 
       alert("MAX_FILES_EXCEEDED"); 
      }); 
     } 
    } 
}; 

すべてのコードが働いています。

答えて

0

は私が怒鳴るこのテストケースを作成する:あなたはangularjsとdropzonejsをフックすると

Dropzone.autoDiscover = true; 
 
Dropzone.options.fbDropZone = { 
 
    init: function() { 
 
     instance = this; 
 
     instance.on("maxfilesreached", function(file) { 
 
       alert("MAX_FILES_REACHED"); 
 
     }); 
 
     instance.on("maxfilesexceeded", function(file) { 
 
       alert("MAX_FILES_EXCEEDED"); 
 
     }); 
 
    }, 
 
    previewTemplate: '<div class="dz-preview dz-file-preview"><div class="dz-details"><div class="dz-filename"><span data-dz-name></span></div><div class="dz-size" data-dz-size></div><img data-dz-thumbnail /></div><div class="dz-progress"><span class="dz-upload" data-dz-uploadprogress></span></div><div class="dz-success-mark"><span>✔</span></div><div class="dz-error-mark"><span>✘</span></div><div class="dz-error-message"><span data-dz-errormessage></span></div></div>', 
 
    paramName: "file", 
 
    maxFiles: 1, 
 
    autoProcessQueue: false 
 
};
#drop_zone { 
 
    width: 50%; 
 
    border: 2px dashed #BBB; 
 
    border-radius: 5px; 
 
    padding: 25px; 
 
    text-align: center; 
 
    color: #BBB; 
 
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.3.0/dropzone.js"></script> 
 
<div id='drop_zone'> 
 
    <form action="/uploads.php" class='dropzone' id='fbDropZone'></form> 
 
</div>

は、あなたがより良いdropzonejs

+0

こんにちはボーエンのためのディレクティブを作成し、これはmaxfilesreachedイベントのために働きますmaxfilesexceededイベントでそれを実行できましたか?私の質問では、このイベントはうまく動作するが、maxfilesexceededは動作しないと書いています。また、ディレクティブが動作し、他のすべてのイベントが正常に実行されるため、ディレクティブに追加することのメリットはありません。 – SM3RKY

+0

@ SM3RKY、「maxfilesExceeded」イベントを追加したばかりで、2番目のファイルをアップロードすると起動します。 –

+0

あなたの助けをいただきありがとうございます、私はチャンスを得るときにもう少し見ていきますが、今はあなたの答えを上げるでしょう。残念ながら、投票した人は誰でも投票します – SM3RKY

関連する問題