typescript - erro 'Expressão do Angular 2 mudou após ter sido verificada' como resultado da adição da barra de rolagem
Eu tenho uma função getter que retorna o offsetWidth de uma parte de um componente. Em algum momento, a página é populada com elementos que acionam a adição de uma barra de rolagem à página. A adição da barra de rolagem altera o layout da página em alguns pixels e muda a largura do meu componente, que está definido como width:100% no CSS. Aparentemente, a mudança de layout ocorre dentro do ciclo de detecção de mudanças.
O problema é que minha função getter então retorna um valor diferente porque sua largura de fato mudou junto com a alteração do layout da página, e isso dispara o ExpressionChangedAfterItHasBeenCheckedError.
Aqui está a minha função:
get width() {
return this.track.nativeElement.offsetWidth;
}
Qual é uma maneira de contornar ou suprimir esse erro?