Node-RED:Создание нод/Контекст ноды: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
 
Нет описания правки
 
(не показаны 3 промежуточные версии 2 участников)
Строка 1: Строка 1:
{{Node-RED/Панель перехода}}
{{Node-RED/Панель перехода}}
{{Перевод от Сubewriter}}
{{Перевод от Сubewriter}}
{{Myagkij-редактор}}
{{Myagkij-редактор}}
{{Черновик}}


=Контекст ноды<ref>[https://nodered.org/docs/creating-nodes/context nodered.org - Node context]</ref>=
=Контекст ноды<ref>[https://nodered.org/docs/creating-nodes/context nodered.org - Node context]</ref>=
Строка 19: Строка 16:
В отличие от ноды '''«Function»''', в которой есть заранее заданные переменные для доступа к каждому из этих контекстов, вам при создании ноды нужно будет вручную задать код для доступа к этим контекстам:
В отличие от ноды '''«Function»''', в которой есть заранее заданные переменные для доступа к каждому из этих контекстов, вам при создании ноды нужно будет вручную задать код для доступа к этим контекстам:


<syntaxhighlight lang="javascript" enclose="div">
<syntaxhighlight lang="javascript">
// Доступ к контекстному объекту ноды:
// Доступ к контекстному объекту ноды:
var nodeContext = this.context();
var nodeContext = this.context();
Строка 30: Строка 27:
Каждый из этих контекстных объектов имеет функции '''get()''' и '''set()''', описанные [[Node-RED:Руководство_пользователя/Написание_функций#.D0.A5.D1.80.D0.B0.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85|здесь]].  
Каждый из этих контекстных объектов имеет функции '''get()''' и '''set()''', описанные [[Node-RED:Руководство_пользователя/Написание_функций#.D0.A5.D1.80.D0.B0.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85|здесь]].  


{{Спойлер|'''Примечание:''' Конфигурационные ноды, которыми ноды пользуются вместе, по умолчанию – глобальные, разве что пользователем ноды не задано что-то другое. Соответственно, у них вряд ли будет доступ к контексту потока.}}
{{Примечание1|Конфигурационные ноды, которыми ноды пользуются вместе, по умолчанию – глобальные, разве что пользователем ноды не задано что-то другое. Соответственно, у них вряд ли будет доступ к контексту потока.}}


=См.также=
=См.также=
Строка 37: Строка 34:


<references />
<references />
{{Навигационная таблица/Node-RED библиотеки}}
{{Навигационная таблица/Телепорт}}

Текущая версия от 10:15, 9 сентября 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Контекст ноды[1]

Нода может хранить данные в своем контекстном объекте.

Более подробно о контексте читайте в статье «Работа с контекстными данными».

Есть три уровня контекста, данными из которых может воспользоваться нода:

  • Контекст ноды – видим только для ноды
  • Контекст потока – видим всем нодам из одного потока (вкладки редактора)
  • Глобальный контекст – видим всем нодам

В отличие от ноды «Function», в которой есть заранее заданные переменные для доступа к каждому из этих контекстов, вам при создании ноды нужно будет вручную задать код для доступа к этим контекстам:

// Доступ к контекстному объекту ноды:
var nodeContext = this.context();

var flowContext = this.context().flow;

var globalContext = this.context().global;

Каждый из этих контекстных объектов имеет функции get() и set(), описанные здесь.

Примечание

Конфигурационные ноды, которыми ноды пользуются вместе, по умолчанию – глобальные, разве что пользователем ноды не задано что-то другое. Соответственно, у них вряд ли будет доступ к контексту потока.

См.также

Внешние ссылки