Цель привязки

Цель привязки - это объект, находящийся под влиянием привязки. Цель привязки указывает на переменную контекста, поле переменной, функцию контекста или событие контекста.

Фактически цель привязки - это особый тип ссылки.

Существует несколько поддерживаемых типов целей привязки:

1. Переменная контекста сервера

context:variable

Цель привязки указывает на значение переменной контекста. Поскольку переменная всегда является таблицей данных, выражение привязки должно разрешаться в таблицу данных, чтобы позволить процессору привязок использовать эту таблицу как новое значение переменной.

2. Поле переменной контекста сервера

context:variable$field

Цель привязки указывает на особое поле в пределах переменной контекста сервера. Только значение этого поля в первой записи таблицы данных переменной будет модифицироваться привязкой.

Пример: users.admin:childInfo$firstname

Эта цель привязки изменит поле firstname переменной childInfo для users.admin.

3. Функция контекста

context:function()

Этот тип цели указывает на функцию контекста. Когда обрабатывается привязка с такой целью, вызывается эта функция. Выражение привязки должно вернуть таблицу данных, которая будет использоваться как ввод функции.

4. Событие контекста

context:event@

Этот тип цели заставляет привязку запустить событие типа событие в контексте. Выражение привязки должно вернуть таблицу данных, чье значение будет обрабатываться как данные события.

Данная цель привязки будет действовать только в том случае, если привязка выполняется внутри AggreGate Server (например, в модели). Если привязка выполняется удаленно (например, в виджете, работающем внутри AggreGate Client), эта цель сгенерирует «локальное» событие, которое будет получено слушателями внутри той же установки AggreGate Client. Это событие не будет перенаправлено в AggreGate Server и другим клиентам.

5. Пустая цель

Если цель привязки является пустой строкой, привязка просто сбросит значение, возвращенное Выражением. Однако такая привязка все равно может использоваться, потому что выражение все же будет рассчитываться и может выполнять полезные дополнительные действия (т.е. может выполнять вызовы функции, которые что-либо выполняют).

Was this page helpful?