Typical Angular application renders and interacts with set of Container (Smart / Stateful) components, containing one or more re-usable Presentation (Dumb / Stateless) components.
Angular Directives are an important construct in angular to make DOM manipulation and / or event handling abstract.
We should Unit Test directives by mocking all dependencies with jasmine mocks and spies.
Angular Single Page Applications (SPAs) handle routes with router-outlets, keeping the browser window on the same page (index.html), enriching experience after initial page load with just post-back / ajax calls
router-outlets
index.html
Advantages of Reactive Forms over Template Driven Forms stem from the fact, controls are defined in Component programmatically and assigned to form and its inputs in Template declaratively