Are you ready to take your Angular CLI build process to the next level? The Architect API is officially supported and stable in Angular 8. It will allow you to modify the behavior of CLI commands or create completely new ones. This is a powerful tool for advanced use cases. This is a thorough article with plenty of code examples to get you going.
The Architect API has tools to schedule and coordinate tasks, used by the CLI for its command implementations. It uses functions called builders as the implementation of a task (which can schedule other builders), and the workspace’s angular.json to resolve projects and targets to their builder implementation.
Lazy loading is a great way to improve the performance of your applications and to improve the user experience. See how you can lazy load modules in your apps in this brief article.
When an angular app is loaded in the browser, all the components, services, pipes and other imported modules in the app.module.ts are loaded in the browser which is the expected behavior of an angular app. But we don’t always want to load all our modules in the app.modules.ts because we might not be using everything at once.
If you're already lazy loading your Angular modules, you can see how this process will be improved with Ivy. Additionally, there is a TSLint rule that you can use to automatically upgrade your code to support the new syntax!
One of the main design goals of the new Ivy renderer is to remove the differences between the JIT and AOT modes based on the principle of locality. Each file knows about everything that it needs to know about, without extra metadata files — this means no more NgModuleFactory classes!
That means that we no longer need to run a separate AOT compile, no longer have to worry about generated files with unknown paths, and we can use our import() operator!