---
metadata:
  - name: generator
    content: Diplodoc Platform v5.70.0
alternate:
  - https://yandex.ru/support/kit/ru/site-editor/custom-sections/utilities/inline-helpers/functions.md
  - href: https://yandex.ru/support/kit/ru/site-editor/custom-sections/utilities/inline-helpers/functions.md
    type: text/markdown
    title: Markdown version
  - href: https://yandex.ru/support/kit/ru/llms.txt?revision=r22105010
    rel: describedby
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/support/kit/ru/llms.txt?revision=r22105010


# Работа с функциями

### bind {#bind}

#|
|| **Описание** | **Сигнатура** ||
||  Привязывает аргументы к функции, создавая новую функцию с предустановленными параметрами (частичное применение). При вызове дополнительные аргументы добавляются после привязанных. Если первый аргумент не является функцией, возвращает `null`. | `{{bind helper arg1 arg2 ...}}` ||
|#

{% cut "Параметры" %}

#|
|| **Параметр** | **Тип** | **Описание** ||
|| `helper` | Function | Хелпер или функция для привязки. ||
||  `arg1..N` | Any | Аргументы, которые будут предустановлены. ||
|#

{% endcut %}

{% cut "Примеры" %}

```handlebars

<ya-kit-button on-press={{(bind controller.onClick "shopping cart")}}>
   Кнопка
<ya-kit-button>

```

{% endcut %}

### call {#call}

#|
|| **Описание** | **Сигнатура** ||
|| Немедленно вызывает функцию с переданными аргументами и возвращает ее результат. Если первый аргумент не является функцией, возвращает `null`. | `{{call fn arg1 arg2 ...}}` ||
|#

{% cut "Параметры" %}

#|
|| **Параметр** | **Тип** | **Описание** ||
|| `fn` | Function | Вызываемая функция. ||
|| `arg1..N` | Any | Аргументы, передаваемые функции. ||
|#

{% endcut %}

{% cut "Примеры" %}

```handlebars
{{!-- Данные: controller.getTitle — функция, возвращающая название по идентификатору --}}
{{call controller.getTitle 42}}
{{!-- Результат: значение, возвращённое controller.getTitle(42) --}}
```
{% endcut %}

### compose {#compose}

#|
|| **Описание** | **Сигнатура** ||
|| Создает функцию, которая вызывает переданные функции по порядку слева направо, с одинаковыми аргументами.
* Результаты вызовов игнорируются, возвращаемое значение созданной функции — `undefined`.
*   Аргументы, не являющиеся функциями, пропускаются.
* Если функций нет, возвращает `null`. | `{{compose fn1 fn2 fn3 ...}}` ||
|#

{% cut "Параметры" %}

#|
|| **Параметр** | **Тип** | **Описание** ||
|| `fn1..N` | Function | Функции для последовательного вызова. ||
|#

{% endcut %}


{% cut "Примеры" %}

```handlebars
<ya-kit-button on-press={{compose controller.onClick controller.trackClick}}>
    Кнопка
</ya-kit-button>
{{!-- При нажатии сначала вызывается controller.onClick, затем controller.trackClick с теми же аргументами --}}

```
{% endcut %}

<!-- source: ru/_includes/support.md -->


## Обратиться в службу поддержки


[Написать в чат](https://yandex.ru/chat/#/user/6c041b05-07a4-99cc-79be-8670b7aff93d){.button}

[Написать письмо](https://yandex.ru/support/kit/ru/feedback.md){.button}

[Яндекс KITᵝ в Telegram](https://t.me/kityandex_support_bot){.button}

[Яндекс KITᵝ в МАКС](https://max.ru/yandex_kit_bot){.button}
<!-- endsource: ru/_includes/support.md -->
