Свойство ColumnApi не существует для типа GridReadyEvent<any, Any>» в Ag-Grid

В моем проекте Angular я только что обновил ag-grid-angular и ag-grid-community с версии 30.2.0 до 32.0.1, и теперь кажется, что GridReadyEvent больше не является собственностью GridReadyEvent!

  // Erorr: Property 'columnApi' does not exist on type 'GridReadyEvent<any, any>'.
  onGridReady({ columnApi, api }: GridReadyEvent): void {
    this.gridApi = api;
    this.gridColumnApi = columnApi;

    this.leads$
      .pipe(
        filter((data) => !!data),
        takeUntil(this.destroyed$)
      )
      .subscribe((data) => {
        const dataSource: IDatasource = {
          rowCount: null,
          getRows: ({ successCallback }) => successCallback(data, data.length),
        };

        api.setDatasource(dataSource); //Property 'setDatasource' does not exist on type 'GridApi<any>'.
      });
  }

Есть идеи, почему его удалили и что заменило?

Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
1
0
167
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вот журнал обновлений ag-grid v31 о columns-api.

Спасибо за ответ. Я искал динамичное и автоматическое решение для облегчения миграции, поскольку у меня действительно большой проект.

Alireza Ahmadi 12.07.2024 12:55
Ответ принят как подходящий

Я нашел Справочник о том, как перейти на новую версию. Кроме того, существует динамический способ перехода на новую версию. Вам просто нужно запустить:

npx @ag-grid-devtools/[email protected] migrate --from=$FROM_VERSION

Это исправит более 50% необходимых вам изменений, однако нам также необходимо внести исправления вручную.

столбецApi:

Если вы уже используете columnApi, замените его на GridApi:

ex: `columnApi.applyColumnState` should be `api.applyColumnState`

Некоторые методы могут изменить свое название:

getAllColumns --> getColumns
getSecondaryColumns --> getPivotResultColumns

Полный список здесь.

ГридАпи:

Большинство методов Set, таких как setDatasource, setTreeData и т. д., были удалены из этих методов и введены setGridOption для установки свойств:

api.setDatasource(dataSource); --> api.setGridOption('datasource', dataSource); 

команда cli облегчила мне много времени :)

Prashanth Benny 24.07.2024 09:19

Другие вопросы по теме