Javascript 如何在dropzone中为maxfilesize抛出错误?

Javascript 如何在dropzone中为maxfilesize抛出错误?,javascript,dropzone,Javascript,Dropzone,在我的代码中,我将文件大小设置为1mb,工作正常,但不会抛出任何错误消息。如何设置 $(document).ready(function () { $("#my-dropzone").dropzone({ maxFiles: 1, maxFilesize: 1, parallelUploads: 1, url: "upload.php", success

在我的代码中,我将文件大小设置为1mb,工作正常,但不会抛出任何错误消息。如何设置

 $(document).ready(function () {

        $("#my-dropzone").dropzone({
            maxFiles: 1,
            maxFilesize: 1,
            parallelUploads: 1,
            url: "upload.php",


            success: function (file,response) {


                file.previewElement.classList.add("dz-success");

            },

            error: function (file,response) {
                sv.previewElement.classList.add("dz-error");
            }
        });
    });

考虑以下等效示例:

try {
    var foo = function() {
        throw new Error("foo error");
    }
}
catch (error) {
}

foo();
您不会仅仅因为定义foo时执行在try块内,就期望捕获调用foo引起的错误

一种解决方案当然是在可能抛出的函数体中使用try/catch,如您所示。另一个解决方案是创建一个可重用的“捕获包装器”函数,可能如下所示:

function catchIfException(func, handler) {
    return function() {
        try {
            var args = Array.prototype.slice.call(arguments);
            func.apply(this, args);
        }
        catch (error) {
            handler(error);
        }
    };
}


    $(document).on('change', 'select', 
        catchIfException(
            function(event) {
                event.preventDefault();
                event.stopPropagation();

                throw new Error('callPage method failed');
            }, 
            function(error) {
                console.log("error: " + error);
            }
        );
    );

作为dropzone文档:

由于只能在Dropzone实例上监听事件, 设置事件侦听器的最佳位置是init函数

因此,设置init回调并在其中的dropzone实例中声明
成功
错误
回调:

$(“#我的dropzone”).dropzone({
maxFiles:1,
最大文件大小:1,
并行上传:1,
url:“upload.php”,
init:function(){//首先需要一个init回调
成功:函数(文件、响应){
警惕(“Yeehaw!”);
},
错误:函数(文件,响应){//然后您可以进行错误回调吗
警惕(“呸,骗子……”);
}
}
});

只需将错误消息添加到错误回调中的
div
控制台。log