Angular-QueryBuilder: динамически изменяющиеся поля

#angular #jquery-query-builder

#angular #jquery-конструктор запросов

Вопрос:

Есть ли способ динамически изменять, какие поля доступны для Angular-QueryBuilder?

Я пытался:

  1. Обновление fields свойства my QueryBuilderConfig .
    • Ничего не происходит.
  2. Удаление и повторное добавление компонента с помощью ngIf и ChangeDetectorRef .
    • Поля действительно обновляются.
    • Однако теперь некоторые поля нарушают работу конструктора запросов. Когда выбрано любое из этих полей, кнопки добавить правило и добавить набор правил, похоже, ничего не делают. Вы должны удалить проблемное поле, прежде чем появятся ваши дополнения.
    • Видео: https://i.imgur.com/UXZgpQ4.mp4

Ответ №1:

Моя проблема заключалась в моих объектах field. У них не было value свойств, поэтому Angular-QueryBuilder создавались value свойства, значениями которых были автоинкрементные целочисленные идентификаторы.

Поскольку я фильтровал из исходного массива без глубокого клонирования, value также устанавливался для объектов в исходном массиве. Тогда индексы были бы неправильными, когда элементы были удалены после фильтрации.