Я использую Go.js
, чтобы сделать diagram
точно так же, как один из их образца . На данный момент их диаграмма static
, и я пытаюсь сделать ее dynamic
.Диаграмма состоит из компонентов (template
) с портами input
и output
.В примере для создания компонента необходимо вызвать метод makeTemplate
и добавить указать порты input
и output
, например:
makeTemplate(name_of_template, path_to_image, color,
[makePort("L", true), makePort("R", true)],//inputs
[makePort("UL", false), makePort("ML", false)];//outputs
Теперь у меня была первоначальная идея создатьфункция, которая возвращает объект, содержащий массивы с моими makePort
вызовами функций.
function createPorts(input,output){
var ports = {
"input":[],
"output":[],
};
for(var i = 0; i < input; i++)
ports.input.push(function(){ makePort("IN"+i, true); });
for(var i = 0; i < output; i++)
ports.output.push(function(){ makePort("OUT"+i, true); });
return ports
}
и вызов метода makeTemplate()
следующим образом:
makeTemplate(name, path_to_image, color,
[],
[createPorts(0,1).output]);
Но я получаю error
:
Uncaught Error: Unknown initializer "function(){
makePort("OUT", true);}"
for object being constructed by
GraphObject.make: Panel(Panel.Vertical)#427