Мне требуется метод, с помощью которого я могу добавить порты к узлу в соответствии с требованиями каждого узла. Поэтому, если узлу требуется 3 порта, он должен генерировать только 3, не больше или меньше. Шаблон узла создает одинаковое количество портов для каждого узла, с которого начинается моя проблема.
Я попытался создать функцию для создания порта, а затем вызвать эту функцию в цикле, чтобы сгенерировать ни один из портов. Функция работает для генерации только одного порта, но если цикл выполняется во второй раз, он не работает. Я также пытался использовать функцию addPort из примера с динамическими портами, и это тоже не дает мне требуемого результата.
function portGen(i){
ports=myDiag.model.nodeDataArray[0].ports;
arr=new Array();
return $(go.Panel, "Horizontal",
{ column: 0, row: i+2 },
$(go.Shape, // the "A" port
{ width: 2, height: 2, portId: String(i+1), toSpot: go.Spot.Left, toLinkable:true, fromLinkable:true, toMaxLinks: 1 }),
$(go.TextBlock, String(i+1)) ) // "A" port label
}
Essentially I would lke to call the portGen function multiple times based on the no of ports to be created.