Мне нужна помощь с редактором потока Node Red. Я изменил модальное диалоговое окно «Экспорт узлов в буфер обмена» и добавил кнопку после «Экспорт в буфер обмена». При нажатии кнопки я выполняю вызов внешнего API, который работает нормально и получает ответ от сервера. Код для вызова API записан в файле /api/editor/code.js, как показано ниже:
const { flows } = redNodes.getFlows();
axios.post(externalUrl, flows)
.then((response) => {
// nice little modal dialog on response
res.status(200).send(response.data.message);
})
.catch((error) => {
console.info('error', error.message);
});
Я хочу отображать информацию, которую я получаю от вызова API, в модальном диалоговом окне внутри приложения Node Red. Как мне этого добиться?
Спасибо

У вас есть два варианта:
Node-RED использует пользовательский интерфейс jQuery, поэтому вы можете создать свой собственный Диалог jQuery с любым содержимым, которое захотите. Есть много примеров использования этого API - я не буду их здесь повторять.
Node-RED предоставляет API RED.notify для раскрывающихся уведомлений. Вы можете использовать это для отображения результата.
В самом простом случае вы можете вызвать:
RED.notify("This is my message");
и это сообщение будет появляться по умолчанию в течение 5 секунд.
Если вы хотите, чтобы он держался до тех пор, пока пользователь не нажмет кнопку, вы можете сделать что-то вроде:
var myNotification = RED.notify("This is the message to display",{
modal: true,
fixed: true,
buttons: [
{
text: "cancel",
click: function(e) {
myNotification.close();
}
},
{
text: "okay",
class:"primary",
click: function(e) {
myNotification.close();
}
}
]
});