2015-12-20 4 views
0

Я новичок в fabtric js. Как я могу добавить идентификатор автогенерации и настраиваемый атрибут в объект js для java. Например, я хотел бы добавить идентификатор, который автогенерируется с приращением целочисленным типом объекта и категории: «новый» при добавлении объектаДобавление идентификатора и пользовательского атрибута в ткани js

Насколько я знаю, ткань js не поддерживает это по умолчанию.

var text = new fabric.IText('Enter text here', { 
     id: 'text-i' -> where i increment according to number of IText in the canvas 
     left: 150, 
     top: 50, 
     type: 'new' 
    }); 

ответ

0

один способ, которым Вы можете achive это установить некоторые дополнительные объекты в вашем холсте:

canvas.ObjectCounter = {}; 

затем добавить все типусы к нему:

canvas.ObjectCounter.['text'] = 0; 
canvas.ObjectCounter.['rect'] = 0; 
canvas.ObjectCounter.['i-text'] = 0; 

и так далее ...

при создании объекта:

var text = new fabric.IText('Enter text here', { 
     id: 'text-' + canvas.objectCounter['i-text']++, 
     left: 150, 
     top: 50 
}); 

следует помнить, что «тип» - это свойство, которое должно оставаться таким, каким оно есть, не меняйте его.

Это будет просто количество объектов, созданных, если вы будете так себя вести. Если вы хотите знать, сколько из них на холсте, вы должны использовать что-то другое в событиях

canvas.on('object:added', function(e){}); 
canvas.on('object:removed', function(e){}); 
+0

Я думал, что мы не можем просто добавить любые пользовательские атрибуты ткани JS непосредственно, кроме тех, предопределены? – desmondlee

+0

вы внимательно следите за тем, чтобы не перезаписывать все, что уже определено, и не ожидайте, что эти новые атрибуты будут работать автоматически с сохранением и восстановлением объекта – AndreaBogazzi

Смежные вопросы