Я использую Angular 7, и у меня есть простой компонент с Angular Material Table. Через какое-то событие, скажем, щелчок мышью, я хочу иметь возможность обновлять как данные, так и заголовок этой существующей таблицы.
До:
После (цели):
В настоящее время я получаю данные для обновления в порядке. Однако я не могу получить текст заголовка столбцов для обновления, если, то есть, я не выполняю довольно простой вызов тайм-аута окна.
Это сложно описать, поэтому репозиторий stackblitz должно помочь. В файле table-dynamic-columns.example.ts, который я связал там, у меня есть две разные стратегии, которые я пробую для обработчика нажатия кнопки changeColumnHeader. Похоже, что для того, чтобы отобразить заголовок моего нового столбца, мне нужно сначала очистить отображаемые столбцы таблицы, а затем установить их обратно в тайм-аут. Возможно, это не работает, потому что имя свойства остается прежним (например, id), а изменяется только заголовок.
Кто-нибудь знает лучший способ правильно обновить это?
this.columnsToDisplay = [];
иsetTimeout()
в предоставленном вами примере stackblitz, и он работал нормально. - person GCSDC   schedule 31.01.2019