Свойства flexberry-multiple-lookup, настройка flexberry-multiple-lookup

Назначение компонента

Flexberry multiple lookup представляет собой элемент управления (компонент), позволяющий выбрать несколько значений мастера. Данный компонент является дополнением к компоненту Flexberry lookup. Общий вид компонента в случае, если текущая тема оформления “Ghost”:

flexberry-multiply-lookup

Кастомизация тегов

Общий вид компонента Flexberry multiple lookup с использованием кастомизации, если текущая тема оформления “Ghost”:

flexberry-multiply-lookup-tag-customization-example

Пример реализации компонента можно посмотреть на тестовом стенде Ember Flexberry.

Настройка шаблона формы

В шаблоне формы необходимо указать для компонента flexberry-multiple-lookup свойство configurateTag:


{{flexberry-multiple-lookup
  ...
  configurateTag=(action "configurateTag")
}}

Настройка контроллера формы

В контроллере нужно определить “экшн”, который принимает два аргумента: tagConfig и record. Например:

import { set } from '@ember/object';
import ListFormController from 'ember-flexberry/controllers/list-form';

export default ListFormController.extend({
  actions: {
    configurateTag(tagConfig, record) {
      set(tagConfig, 'canBeDeleted', false);
      if (record === this.get('myFavoriteRecord')) {
        set(tagConfig, 'canBeSelected', false);
        set(tagConfig, 'customClass', 'my-fav-record');
      }
    }
  }
});

Для кастомизации тегов необходимо в объекте tagConfig указать параметры настройки для нужной записи. Возможные настройки:

Название свойства Тип свойства Описание
canBeDeleted Boolean Тег может быть удален.
canBeSelected Boolean Тег может быть выбран. Возможно будет открыть форму редактирования записи.
customClass String Пользовательские классы css для тега.