我正在尝试使用fromURL加载图像。问题是,我希望它能够在无法访问图像服务器下载图像的情况下加载默认图标。查看文档,我没有看到fromURL函数的错误回调。我们应该如何发现调用未成功,因此做适当的事情?图像加载失败时,似乎根本没有调用过回调。

最佳答案

您可以使用fabric.util.loadImage()方法代替fabric.Image.fromURL()

如果查看fromURL()方法的实现,则在内部使用loadImage()

以下代码可以为您提供帮助:

fabric.util.loadImage('https://s3-eu-west-1.amazonaws.com/kienzle.dev.cors/img/image2.png', function(img) {
    if(img == null) {
        alert("Error!");
    }else {
        var image = new fabric.Image(img);
        canvas.add(image).setActiveObject(image);
        canvas.renderAll();
    }
}, { crossOrigin: 'anonymous' });

这是 fiddle :http://jsfiddle.net/k7moorthi/30kmn5kL/

10-06 02:45