---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.ru/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/behavior.RouteEditor.md
  - https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/behavior.RouteEditor.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/jsapi-v2-1/doc/ru/llms.txt

# behavior.RouteEditor

Расширяет [IBehavior](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md).

Поведение "редактор маршрутов".

[Конструктор](#constructor-summary) | [Поля ](#properties-summary) | [События ](#events-summary) | [Методы ](#methods-summary)

## Конструктор {#constructor-summary}

```javascript
behavior.RouteEditor()
```

## Поля {#properties-summary}

#|
|| **Имя** | **Тип** | **Описание** ||
|| [events](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md#events) | [IEventManager](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventManager.md) | Менеджер событий.

Унаследовано от [IEventEmitter](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md#events). ||
|| [options](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#options) | [IOptionManager](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IOptionManager.md) | Менеджер опций.

Унаследовано от [ICustomizable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#options). ||
|#

## События {#events-summary}

#|
|| **Имя** | **Описание** ||
|| [disable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#event-disable) | Выключение поведения.

Унаследовано от [IBehavior](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#event-disable). ||
|| [enable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#event-enable) | Включение поведения.

Унаследовано от [IBehavior](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#event-enable). ||
|| [optionschange](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#event-optionschange) | Изменение в опциях объекта.

Унаследовано от [ICustomizable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#event-optionschange). ||
|| [parentchange](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChild.md#event-parentchange) | Сменился родительский объект.

Поля данных:

- oldParent - старый родитель;
- newParent - новый родитель.

Унаследовано от [IChild](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChild.md#event-parentchange). ||
|| [routechange](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/behavior.RouteEditor.md#event-routechange) | Событие смены маршрута вследствие вызова метода setState или включения/выключения поведения. Старый и новый маршрут можно получить через свойства события 'oldRoute' и 'newRoute' соответственно. ||
|#

## Методы {#methods-summary}

#|
|| **Имя** | **Возвращает** | **Описание** ||
|| [disable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#disable)() | | Выключает поведение.

Унаследован от [IBehavior](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#disable). ||
|| [enable](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#enable)() | | Включает поведение.

Унаследован от [IBehavior](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#enable). ||
|| [getParent](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChildOnMap.md#getParent)() | [IParentOnMap](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IParentOnMap.md)\|null | Возвращает ссылку на родительский объект или null, если родительский элемент не был установлен.

Унаследован от [IChildOnMap](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChildOnMap.md#getParent). ||
|| [getRoute](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/behavior.RouteEditor.md#getRoute)() | [router.Route](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/router.Route.md) | Возвращает маршрут. ||
|| [getState](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/behavior.RouteEditor.md#getState)() | String | Возвращает текущее состояние редактора маршрутов в закодированном виде. ||
|| [isEnabled](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#isEnabled)() | Boolean | Проверяет, включено ли поведение.

Унаследован от [IBehavior](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IBehavior.md#isEnabled). ||
|| [setParent](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChildOnMap.md#setParent)([parent](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChildOnMap.md#setParent-param-parent)) | [IChildOnMap](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChildOnMap.md) | Устанавливает родительский объект. Если передать значение null, то элемент управления будет только удален из текущего родительского объекта.

Унаследован от [IChildOnMap](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IChildOnMap.md#setParent). ||
|| [setState](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/behavior.RouteEditor.md#setState)([state](https://yandex.ru/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/behavior.RouteEditor.md#setState-param-state)) | | Восстанавливает состояние редактора маршрутов из закодированной строки. При установлении нового маршрута будет вызвано событие routechange. ||
|#

## Описание событий {#event_detail}

### routechange {#event-routechange}

Событие смены маршрута вследствие вызова метода setState или включения/выключения поведения. Старый и новый маршрут можно получить через свойства события 'oldRoute' и 'newRoute' соответственно.

## Описание методов {#method_detail}

### getRoute {#getRoute}

```javascript
{router.Route} getRoute()
```

**Возвращает** маршрут.

### getState {#getState}

```javascript
{String} getState()
```

**Возвращает** текущее состояние редактора маршрутов в закодированном виде.

### setState {#setState}

```javascript
{} setState(state)
```

Восстанавливает состояние редактора маршрутов из закодированной строки. При установлении нового маршрута будет вызвано событие routechange.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание**  ||
||  [`state`](#setState-param-state)[*](*star) | — | Тип: String\|null

Закодированное состояние редактора маршрутов. Состояние задается в следующем формате: rt=точка1~точка2~точка3~точка4...&via=индексы-via-points Например, если закодированная строка выглядит так: "rt=50,30~42,35~45,32~40,30&via=1,2", это значит что путевыми точками маршрута должны быть "50,30" и "40,30", а промежуточными "42,35" и "45,32". Если параметр via не указывать, то маршрут будет состоять только из путевых точек. ||
|#

\* Обязательный параметр/опция.

**Пример:**

```javascript
var behavior = map.behaviors.get('routeEditor');
behavior.events.add('routechange', function (e) {
   var newRoute = e.get('newRoute');
   alert(newRoute.getLength()); // Длина нового маршрута.
   setTimeout(function () {
       // Удаляем маршрут.
       behavior.setState(null);
   })
});
behavior.setState('rt=55.874872,37.562677~55.92517867214157,37.62725433916199~55.920011490602526,37.6629269628905&via=1');
```

<!-- XLIFF_FARM_NDU4OThl_CACHING -->

[*star]: Обязательный параметр.