Demasiado Largo; Para Leer
Parece que recientemente, casi todos los días, hay una pregunta sobre stackoverflow con respecto al error ExpressionChangedAfterItHasBeenCheckedError lanzado por Angular. Por lo general, estas preguntas surgen porque los desarrolladores de Angular no entienden cómo funciona la detección de cambios y por qué se requiere la verificación que produce este error. Muchos desarrolladores incluso lo ven como un error. Pero ciertamente no lo es. Este es un mecanismo de precaución implementado para evitar inconsistencias entre los datos del modelo y la interfaz de usuario para que los datos erróneos o antiguos no se muestren a un usuario en la página.