Почему добавление столбца в ag-grid-react вызывает повторную визуализацию всех ячеек? - PullRequest
1 голос
/ 07 августа 2020
• 1000 Есть ли способ предотвратить это? Я передаю точно такие же rowData и не меняю ссылки на другие columnDefs

1 Ответ

1 голос
/ 10 августа 2020

Вы должны использовать columnApi.setColumnState(), чтобы обновить видимость столбца. Избегайте setState (что я предполагаю в вашем случае), потому что это не нужно. Все остальное Ag-grid сделает за вас. Примерно так:

    const show = true; // or false depend on what you want
    const columnState = columnApi.getColumnState();
    const newColumnState = columnState.map((c) => {
      const nc = { ...c };
      if (c.colId === targetColId) {
        nc.hide = show;
      }
      return nc;
    });
    columnApi.setColumnState(newColumnState);

Живой пример

Изменить видимость столбца AgGrid

...