Используется в конструкторе интерфейсов, чтобы настроить функцию обратного вызова действия, вызвать серверный метод с клиентского сценария или глобальную функцию внутри компонента.
Особенности:
- свойство доступно во втором рантайме;
- функция свойства типа Действие всегда асинхронная. Поэтому используйте оператор
await
.
Настройки в дизайнере
Если вы выберете тип Действие, то в карточке свойства на вкладке Основные настройки, помимо полей, одинаковых для всех свойств, отобразятся дополнительные.
Вкладка «Основные настройки»
Здесь вы можете заполнить следующие поля:
- Возвращаемый тип — укажите тип выходного значения функции. Оставьте поле пустым, если функция не возвращает значение;
- Тип входного параметра — выберите тип входного значения функции. Функция может иметь только один входной параметр.
Если поле оставить пустым, функция не принимает параметры. Чтобы передать в функцию несколько значений, укажите в этом поле структуру обмена данными; - Входное — опция доступна на карточке свойства страницы или компонента. Включите её, чтобы использовать свойство типа Действие для функции обратного вызова;
- Значение по умолчанию* — поле обязательно для заполнения. Здесь вы можете:
- — раскрыть список и выбрать существующую функцию. В списке доступны только те функции, тип входного и выходного параметра которых совпадает с настройками Возвращаемый тип и Тип входного параметра;
- — добавить новую клиентскую или серверную функцию;
- — редактировать добавленные функции.
Пример использования свойства типа «Действие»
Вы можете применить переменную типа Действие, чтобы передать код одного компонента в качестве параметра другого компонента.
Рассмотрим пример. Есть Компонент А с методом Save
и Компонент В с кнопкой Сохранить. Вызовем действие Компонента А при нажатии кнопки в Компоненте В. Для этого:
- В конструкторе интерфейсов создайте Компонент В и добавьте в него свойство типа Действие со следующими параметрами:
- Отображаемое имя — укажите название SaveAction;
- Тип — выберите Действие;
- Возвращаемый тип — оставьте пустым;
- Тип входного параметра — оставьте пустым;
- Значение по умолчанию — создайте пустую клиентскую функцию
SaveAction()
.
- Перейдите на вкладку Компоненты и добавьте кнопку со следующими параметрами:
- Текст кнопки — укажите значение Сохранить;
- Действие при нажатии — создайте на клиенте функцию
OnClick()
:
public async Task OnClick() { await Context.SaveAction(); }
- Сохраните и опубликуйте Компонент В, а затем перейдите на главную страницу, нажав значок в левом нижнем углу.
- На этой странице создайте Компонент А. Откроется страница конструктора созданного компонента.
- Добавьте на форму Компонент В. Для этого нажмите значок в левом меню, откройте вкладку Компоненты и перенесите Компонент В на форму.
- На форме Компонента А перейдите на вкладку Настройки представления компонента В и укажите входной параметр
SaveAction
в поле Входные. - Сохраните и опубликуйте Компонент А.
Теперь из Компонента В можно вызывать действие Компонента А.
О других примерах использования свойства типа Действие в сценариях читайте в Базе знаний.
Нашли опечатку? Выделите текст, нажмите ctrl + enter и оповестите нас