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