Программный выбор узлов в GoJS: подробное руководство

GoJS — мощная библиотека JavaScript для создания интерактивных диаграмм и графиков. Он предоставляет широкий спектр функций, включая возможность программного выбора узлов. В этой статье блога мы рассмотрим несколько методов выбора узлов в GoJS, сопровождаемые примерами кода. Независимо от того, являетесь ли вы новичком или опытным разработчиком, это руководство поможет вам понять различные подходы к выбору узлов в GoJS.

Метод 1: использование метода выбора диаграммы

Самый простой способ программного выбора узла в GoJS — использовать метод select, предоставляемый объектом Diagram. Следующий фрагмент кода демонстрирует, как выбрать узел с заданным ключом:

var diagram = ...; // Reference to your GoJS diagram instance
var nodeKey = 'node1'; // The key of the node you want to select
var node = diagram.findNodeForKey(nodeKey);
if (node !== null) {
  diagram.select(node);
}

Метод 2: установка свойства isSelected узла

Каждый узел в GoJS имеет свойство isSelected, которое определяет, выбран он или нет. Установив для этого свойства значение true, вы можете выбрать узел программным способом. Вот пример:

var diagram = ...; // Reference to your GoJS diagram instance
var nodeKey = 'node1'; // The key of the node you want to select
var node = diagram.findNodeForKey(nodeKey);
if (node !== null) {
  node.isSelected = true;
}

Метод 3: использование метода selectNode CommandHandler

GoJS предоставляет класс CommandHandler, который предлагает различные методы взаимодействия с диаграммой, включая выбор узлов. Метод selectNodeможно использовать для программного выбора узла. Вот как вы можете его использовать:

var diagram = ...; // Reference to your GoJS diagram instance
var nodeKey = 'node1'; // The key of the node you want to select
var commandHandler = diagram.commandHandler;
var node = diagram.findNodeForKey(nodeKey);
if (node !== null) {
  commandHandler.selectNode(node);
}

Метод 4. Использование метода findNodeByExample диаграммы

Метод findNodeByExampleпозволяет искать узел по определенным критериям и выбирать его программным способом. Вот пример:

var diagram = ...; // Reference to your GoJS diagram instance
var nodeCategory = 'category1'; // The category of the node you want to select
var node = diagram.findNodeByExample({ category: nodeCategory });
if (node !== null) {
  diagram.select(node);
}

В этой статье мы рассмотрели несколько методов программного выбора узлов в GoJS. Мы рассмотрели использование метода select, настройку свойства isSelected, использование класса CommandHandlerи использование метода findNodeByExample.. Понимая эти различные методы, вы сможете повысить интерактивность и функциональность своих диаграмм GoJS.

Не забудьте обратиться к официальной документации GoJS для получения подробной информации об этих методах и их параметрах. Приятного кодирования!