2013-12-16 2 views
2

Мое требование похоже на то, что я добавляю две конечные точки, используя jsplumb.addEndPoint для двух контейнеров с именем 'container0' и 'container1'.Jsplumb добавить соединение программно с использованием конечных точек

Теперь мне нужно связать две конечные точки с помощью коннектора программно, но jsplumb.connect создает новую конечную точку и соединяется и не использует конечную точку, которую я создал с помощью jsplumb.addEndpoint.

Как я могу подключить эти две конечные точки? Также я просто хочу добавить соединение, если соединение еще не существует для конечных точек?

ответ

5

Для подключения с использованием уже существующие конечных точек вы можете использовать идентификатор UUID-х конечные точки:

jsPlumb.ready(function() { 
    var e0 = jsPlumb.addEndpoint("container0",{uuid:"ep1"}), //set your own uuid for endpoint for later access. 
    e1 = jsPlumb.addEndpoint("container1",{uuid:"ep2"}); 
    jsPlumb.connect({ uuids:[e1.getUuid(),e2.getUudi()] }); // (or) jsPlumb.connect({ uuids:["ep1","ep2"] }); 
}); 
0

Согласно APIjsPlumb.connect() можно получить

массива UUID, два Endpoints

, но это не единственный способ подключения конечных точек, так как есть и другой способ (что больше c ommon, поскольку он используется для соединения двух объектов) с исходными и целевыми параметрами, которые могут получать String или Object (как объект DOM) или непосредственно конечную точку (что не совпадает с селектором DOM конечной точки, например, оно может быть let firstEndpoint = jsPlumb.addEndpoint()).

Итак, если вы, как я, не хотите использовать универсальный уникальный идентификатор, вы можете придерживаться классической целевой цели и предоставлять конечную точку в качестве параметров.

jsPlumb.connect({ source: firstEndpoint, target: jsPlumb.selectEndpoints() }); 
Смежные вопросы