错误的写法
我尝试在匿名函数处直接进行异常捕获但是异常无法被正常抛出
$('#fuc1').click(function () { 直接写了 try{}catch{} });
然后异常并没有被捕获,
我也不知道是我的写法错误,还是 匿名函数中,不支持太复杂的操作
因为函数中还使用了 promise 对象
正确的写法
调用处,写法
// 两张图像合成 $('#fuc1').click(function () { twoimgchange() }); //图像镜像变换 $('#fuc2').click(function(){ oneimgchange("Mirror",$('#img1'))});
函数定义
function twoimgchange() { try{ var p1 = getImageFileFromUrl($('#img1')[0].src, "img1.jpg") p1.then((file1) => { var p2 = getImageFileFromUrl($('#img2')[0].src, "img2.jpg") p2.then((file2) => { var formdata = new FormData(); var blobimg1 = file1 var blobimg2 = file2 formdata.append('img1', blobimg1) formdata.append('img2', blobimg2) $.ajax({ cache: false, type: 'POST', // 根据表单id 生成数据 data: formdata, url: "/dealimg/addtwoimg/", traditional: true, //为必须内容 //dataType:'json', //data为json时必须 processData: false, //为必须内容 contentType: false, //为必须内容 success: function (data) { {# data=JSON.parse(data);#} {# console.log(typeof(data))#} {#beforedivimg($('#dropBox'),"处理结果",data.resultimgurl)#} var imgsrc = "data:image/jpeg;base64," + data; beforedivimg($('#dropBox'), "处理结果", imgsrc) }, beforeSend: function (xhr, settings) { xhr.setRequestHeader("X-CSRFToken", '{{ csrf_token }}'); } }); }).then(() => {})}).then(() => {}) }catch (e) { alert("图片数量不足"); } }