Рефакторинг механизма правил Node-RED: добавление пользовательских узлов
Рефакторинг механизма правил Node-RED: добавление пользовательских узлов

В механизме правил Node-RED пользовательские узлы являются важным способом расширения его функциональности. Добавляя пользовательские узлы, пользователи могут настраивать узлы в соответствии со своими потребностями для достижения определенных функций. Ниже описано, как провести рефакторинг механизма правил Node-RED и добавить собственные узлы.

1. Подготовьте среду

Сначала убедитесь, что у вас установлены Node.js и npm (менеджер пакетов Node). Затем установите Node-RED через npm:

Язык кода:javascript
копировать
bashкопировать код npm install -g node-red

2. Создайте собственные узлы

Создайте новую папку в каталоге проекта для хранения кода пользовательского узла.

Создайте JavaScript файлы, такие как custom_node.js

существовать custom_node.js Напишите код для пользовательских узлов в файле. Вот простой пример:

Язык кода:javascript
копировать
// custom_node.js  
const { RED } = require("@node-red/core");  
  
// Определение свойств пользовательских узлов  
const node = {  
  // имя узла  
  name: "Custom Node",  
  // тип узла  
  type: "custom",  
  // Количество входных и выходных портов узла  
  inputs: 1,  
  outputs: 1,  
  // Варианты конфигурации узлов  
  config: {  
    // Здесь определяются атрибуты и значения по умолчанию параметра Конфигурация.  
  },  
  // Как обрабатывать входные данные  
  receive: function (msg) {  
    // существуют Напишите сюда логику обработки входных данных  
    // Передайте результат следующему узлу или выведите его непосредственно на следующий узел.  
  },  
};  
  
RED.nodes.registerType("custom", node);

существовать package.json Добавьте зависимости пользовательского узла в файл:

Язык кода:javascript
копировать
{  
  "dependencies": {  
    "@node-red/core": "^1.0.0" // в соответствии с Node-RED Заменить номером версии  
  }  
}
  1. существовать запустить в каталоге проекта npm install команда для установки зависимостей.
  2. После установки файлов кода и зависимостей пользовательского узла node_modules Папку скопировать в Node-RED в папке узла. Обычно Node-RED Папка узла находится в домашнем каталоге пользователя. .node-red папка. Переместите файл кода пользовательского узла скопировать в .node-red/nodes папка, место node_modules Папку скопировать в .node-red/node_modules папка.
  3. Перезапуск С Node-RED вы увидите свои собственные узлы в списке существующих узлов. Теперь вы можете существовать существующие транспортные средства и подключать другие узлы в графе потока.

Выполнив описанные выше шаги, вы успешно реструктурировали механизм правил Node-RED и добавили собственные узлы. Вы можете дополнительно расширить функции пользовательских узлов по мере необходимости для удовлетворения потребностей конкретных сценариев применения.

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода