Использование автозаполнения материалов для встроенного редактирования с помощью ag-grid

У меня возникают проблемы при попытке использовать angular-material Autocomplete для оперативного редактирования.

Создан план для того же: Автозаполнение материалов для встроенного редактирования - ag-grid

  1. Параметры автозаполнения не попадают в ожидаемую позицию. Мне нужно прокрутить вниз под нижней частью сетки, чтобы увидеть варианты.
  2. Выбрав любой вариант, я не могу видеть обновленное значение в строке - вместо этого я вижу пустое значение.

Пытался предоставить различные значения для isPopup?(): boolean { return false; } для №1 и getValue() { return this.selectedValue; } для №2, но не понял, в чем проблема.

Я хочу,

  1. Параметры для отображения в правильном месте - например, то, что мы видим при использовании обычного автозаполнения материала
  2. Параметры, которые будут отображаться, как только я открою ячейку для редактирования - на данный момент мне нужно щелкнуть внутри ячейки редактирования.
  3. Как только я выберу подходящее значение, оно также должно быть обновлено в сетке.

person Paritosh    schedule 27.03.2019    source источник


Ответы (1)


Первый случай может быть решен путем переопределения .cdk-overlay-pane, просто добавьте блок styles в свой AutocompleteEditor компонент

styles: [`
    ::ng-deep .cdk-overlay-pane {
        /* Do you changes here */
        position: fixed; // <- only this one is crucial
        z-index: 1000;
        background:white
    }
`],

Частично получен ответ от здесь

Во-вторых, вы должны сами позаботиться о focus, поэтому самый простой способ создать еще ViewChild ссылку и добавить ее во входные данные в качестве примера #cInput

@ViewChild('cInput') public cInput;
afterGuiAttached?(): void {
    this.cInput.nativeElement.focus();
}

В третьем случае используйте параметр вместо value внутри функции _autoCompleteChanged

_autoCompleteChanged(option) {
  this.selectedValue = option; 
}
person un.spike    schedule 27.03.2019
comment
Спасибо чувак! Я (фейспалм) наказал за глупую ошибку в _autoCompleteChanged. - person Paritosh; 28.03.2019
comment
Выбор не происходит, если для сетки stopEditingWhenGridLosesFocus установлено значение true. - person Programmer; 25.05.2021