错误的写法
我尝试在匿名函数处直接进行异常捕获但是异常无法被正常抛出
$('#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("图片数量不足");
}
}