Vis.js: Оставайтесь в addEdgeMode/Событие после добавления края

Я хотел бы остаться в addEdgeMode в vis.js после добавления ребра. Есть ли способ достичь этого?

Моя идея состояла в том, чтобы снова включить addEdgeMode после добавления ребра. Есть ли событие, которое запускается после добавления края? Я знаю, что в манипуляции addEdge опция addEdge. Однако это срабатывает перед вставкой.

1 ответ

вы можете включить addEdge снова сразу после предыдущего добавления, например:

manipulation: {
 enabled: false,
 addNode: function (data, callback) {
 // filling in the popup DOM elements
 console.log('add', data);
 },
 editNode: function (data, callback) {
 // filling in the popup DOM elements
 console.log('edit', data);
 },
 addEdge: function (data, callback) {
 console.log('add edge', data);
 if (data.from == data.to) {
 var r = confirm("Do you want to connect the node to itself?");
 if (r === true) {
 callback(data);
 }
 }
 else {
 callback(data);
 }
 // after each adding you will be back to addEdge mode
 network.addEdgeMode();
 }

см. последнюю строку в этом примере кода.

network.addEdgeMode();

это позволит включить режим addEdge сразу после обратного вызова.

см. этот пример в plunker

licensed under cc by-sa 3.0 with attribution.