Jquery Fabricjs计数对象

Jquery Fabricjs计数对象,jquery,fabricjs,Jquery,Fabricjs,有没有办法使用Fabric.js计算画布中已有多少对象 function addImage(imageName) { fabric.Image.fromURL('./image_path/' + imageName, function (image) { image.set({ left: 10, top: 10, width: 100, height: 100,

有没有办法使用Fabric.js计算画布中已有多少对象

    function addImage(imageName) {

    fabric.Image.fromURL('./image_path/' + imageName, function (image) {

        image.set({
            left: 10,
            top: 10,
            width: 100,
            height: 100,
            centeredScaling: true,
            lockUniScaling: true
        })


        canvas.add(image);
    });
};
然后是jQuery:

    $('.click').on("click", function (e) {
    e.preventDefault;
    var imgId = $(this).attr('id');

    var number = $('canvas img').length;
    if (number == 5) {
        alert("You can add only 5 images");
    } else {
        addImage(imgId + ".png");
    }
});
有办法数一数吗?

试试看

var count = 0;//initial count
$('.click').on("click", function (e) {
    e.preventDefault;
    var imgId = $(this).attr('id');
    if (count > 5) { //check count of images added
        alert("You can add only 5 images");
    } else {
        addImage(imgId + ".png");
        count++;//increase count 
    }
});

下面是如何在画布内计算fabricjs中对象的固定版本

var count = canvas.getObjects().length - 1;
$('.a').on("click", function (e) {
    e.preventDefault;
    var imgId = $(this).attr('id');


    if (count > 40) {
        alert("You can add only 40 images");

    } else {
        addImage(imgId + ".png");
        count++;
    }

});
canvas.getObjects().length