No description, website, or topics provided.
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
.gitignore
CHANGELOG.md
README.md
analysis_options.yaml
pubspec.yaml

README.md

Директива для компонента material-auto-suggest-input из пакета angular_components.

Директива DadataDirective реализует подсказки

  • адреса
  • отдельно города
  • отдельно региона
  • реквизитов организации
  • реквизитов банка
  • фио
  • email

Как использовать

Используется для компонента material_auto_suggest_input.

Пример:

<material-auto-suggest-input
 dadata="legal_entity"
 [gender]="gender"
 dadata-delay="500"
 dadata-token="ksdfjwoefjweoo"
</material-auto-suggest-input>

dadata="legal_entity" - в кавычках указываем возможные варианты использования подсказок

  • address - автоподсказка адресов.
  • city - выбор города.
  • region - выбор региона.
  • surname - автоподсказка фамилий.
  • name - автоподсказка имен.
  • patronymic - автоподсказка отчеств.
  • fio - автоподсказка фамилий имен и отчеств.
  • bank - по реквизитам банка.
  • legal_entity - по реквизитам организации.

Задача директивы, получив текст, введенный в поле и выполнить обращение к сервису dadata.ru за списком подсказок. Обращение к сервису происходит посредством http запроса к REST API. Некоторые варианты использоваия могут выдавать подсказки, используя геопозиционирование. Тогда в первую очередь выдаются варианты, относящиеся к месту геопозиционирования. Для получения геопозиционирования при первой попытке получить подсказку происходит запрос к dadata.ru с целью определения геопозиции. Директива запоминает полученный КЛАДР города или состояние невозможности получить КЛАДР. Затем КЛАДР используется в каждом обращении к dadata.ru. Или не используется, если не удалось определить.

Запросы подсказок ФИО могут дополняться полом. В таком случае подсказка выдает варианты в соответствии с полом. Каждая подсказка содержит параметр gender пол. MALE, FEMALE или UNKNOWN

UNKNOWN - такой вариант возникает например в бесполых фамилиях. Например Редекоп.

Если в компонент, содержащий material-auto-suggest, добавить публичное свойство gender, то это свойство будет доступно в директиве. Если это свойство не null, то директива будет использовать это свойство при получении списка подсказок.

Это будет работать только в одном случае. При добавлении в шаблон

<material-auto-suggest-input
 ...
 [gender]="gender"
 ...
</material-auto-suggest-input>

Компонент, содержащий material-auto-suggest-input, может внутри метода

(blur)="method()"

обработать SelectionModel, получить значение gender, и присвоить свойству компонента gender.

!Важно! Должно быть только так [gender]="gender".

<material-auto-suggest-input
  ...
  dadata-delay="500"
  ...
</material-auto-suggest-input>

Параметр delay задает для директивы задержку выполнения запроса в миллисекунда пока пользователь стучит по клавиатуре. Если параметр не определен, то используется дефолтовое значение 500.

  • dadata-token - обязательный параметр. Содержит токен авторизации на сервисе dadata.ru.

Бесплатно разрешено выполнять 1000 запросов в сутки.