Я застрял в этом несколько дней и хочу, чтобы ваша помощь знала, как решить эту проблему. Я создал это приложение, похожее на блок-схему, чтобы нарисовать различные типы предметов с привязкой к различным конечным точкам. После того, как он создается как элемент, конечные точки добавляются динамически в соответствии с типом объекта plumb. это похоже на следующее.Переопределение конечных точек с помощью jsPlumb
Вот как я создаю предметы с отвесом.
var element = document.createElement("div");
element.setAttribute("id",schema_id);
element.setAttribute("class","item " +control.Type);
element.setAttribute("style","left:" +posX + "px ; top: "+posY+"px");
var output = document.getElementById('container');
output.appendChild(element);
И затем я добавляю конечные точки в соответствии с его типом.
jsPlumb.addEndpoint(element,<the style goes here>,{ anchor:<the location of the endpoint goes here>, uuid: <a new ID is created for this>});
И это то, что он выглядит как
мне удалось схватился данные из метода «GetConnections» и получить его сохранить в БД как JSON. Этот JSON включает в себя все идентификаторы, которые предназначены для элементов plumb и всех конечных точек.
Но когда я пытаюсь вернуть его обратно в пользовательский интерфейс, он выглядит следующим образом. Все выглядит великолепно, кроме конечных точек.
На перерисовку, конечные точки создаются таким же образом, упомянутый выше. Чтобы повторно подключить конечные точки, я использую этот код.
jsPlumb.connect({ source:<source id>, target:<target id>,anchors:<location of the endpoint>,<style>);
Проблема:
Для приведенного выше кода, хотя я даю UUID конечной точки до источника и цели, он не идентифицирует его как конечные точки для подключения и.
Есть ли способ найти идентификатор и подключить их? Я узнал, что только объекты plumb можно искать с помощью «getElementById» с UUID, но не с конечными точками.
Проблема заключается в том, как заставить эти конечные точки подключиться, как первоначально нарисовано. Как подключить каждую конечную точку снова? У меня есть все идентификаторы, и когда они перерисовываются, у них есть те же идентификаторы, которые были у него, когда они были сохранены. Но я не мог найти способ снова подключать конечные точки отдельно, поскольку у этого есть разные типы конечных точек, специфичные для каждого элемента отвеса.
Любые предложения?
Извините за длинный пост Спасибо заранее!
Спасибо. jsPlumb.connect ({uuids: <массив uuids>}); сделал работу :) –