Most developers prefer incremental build for software codes, so that the complete code doesn’t have to be redone from scratch when a change or improvement is needed. Bazel is a compiler that does exactly that in Angular, using efficient parallel execution.
The component dev kit contains more than 30 separate components for user interface building. These UI components can be built into Angular using CDK.
This is a renderer in Angular which helps in faster compilation by increasing the speed and reducing the size. This helps a developer have smaller volume of code.
In the NavigationStart function, there was no way for a subsequent developer to be certain about the source of initiation of navigation. The Router allows the developer to know this from the source field and from the restored navigation id.
With every new release, Angular has brought in some or the other improvements, and this version is no different. Let us now move to the new changes brought in for release 6.0 in Angular.
Till the 5threlease, you needed to import things into the application using older syntax. But in version 6.0, RxJS is used internally in the platform, and there are slight changes in the syntax as well. You will need to migrate to Angular 6 using the detailed document that has been released. The migration has been made easy with the help of the tslint rules which can be done with a --fix! command.
In Angular6, you can have a runtime i18n easily without having to build your application again. This change in i18n has only been announced, but you will be able to start using it only after a few weeks go by. Another change which is ready for immediate use is the currency round off convention. Earlier all rounding off was done on only 2 digits, irrespective of the currency in use, but now the rounding off will be done as per the currency in use. This has made the currency pipes much more user friendly. Apart from currency, you can also format the following as per your need 0 percentage, date and number.
If you need to embed some of the components of your Angular script into another application, then it can now be done easily in the form of web components using Angular Elements. This project was being run as part of the Labs earlier, but with release Angular 6.0, it has been put out for use by the developers.
Earlier, all components (including fields and methods) used in templates were necessarily in public domain. But now, you can have private properties as well. In Angular6, the template function is encased in a static field which can help you access the private properties as well. One word of caution is necessary here. It is rumoured that this property will be taken away from release 7.0 onwards. Therefore it might not be a good idea to get too used to it.
If you are not using AnimationBuilder then you can save some space on your application by doing away with the web-animations-js function when you are creating animations. You might be using a browser that doesn’t support the necessary API, in which case the new release 6.0 of Angular will revert to CSS.
Registration of Providers
The new version of Angular provides a new attribute called providedIn. You can register the injectable as a singleton in the application by using the value ‘root’. This greatly improves the quality of tree-shaking in the application.
The developer community is all excited about this new release, and these new features sound like they will have lot of fun coding the new websites or migrate the existing ones to this latest version of AngularJS.