What is the difference between production and development mode in Angular2?

In development mode, change detection does a second run immediately after the first run and produces an error if any bound value has changed between the first and the second run. This helps to locate bugs where checking values has side-effects or fields or functions don’t return the same value on subsequent calls which undermines Angular’s change detection.

In development mode, during the second change detection run, Angular also does some deep object comparisons that it won’t do in production to detect model changes that are disallowed.

Update:

In development mode, a hint is also printed to the console when the HTML sanitizer service strips values from bindings [innerHTML]="..." or [ngStyle]="...".
See also: In RC.1 some styles can’t be added using binding syntax

Leave a Comment