Angularjs is a standout amongst the most famous systems for web application advancement. With the arrival of Angular 7, it has given much more highlights to web designers like including the center structure, Angular Material, CLI with synchronized significant renditions, along with tool chain, and has empowered a few noteworthy accomplice dispatches.
So we are featuring a portion of its new highlights reported by the Angular Team. However, not a great deal of new highlights and updates presented in this discharge, Angular 7 fundamentally centered around the Ivy venture, reworking the Angular compiler and run time code to make it littler, better, quicker. Be that as it may, Ivy isn’t prepared for prime time yet.
Lets Jump to Top 10 Features introduced in Angular 7.0
Angular CLI has refreshed to v7.0.2 included a few highlights like now it will incite clients while composing regular directions like ng-add or ng-new, @angular/material to enable you to find worked in highlights like steering or SCSS support. With Angular 7, while making new tasks it exploits Bundle Budgets in CLI
Angular group found flaw that Angular designer were including the reflect-metadata polyfill underway, which is just required being developed, In request to fix this, some portion of the refresh to v7 will naturally expel it from your polyfills.ts document, and afterward incorporate it as a manufacture step when fabricating your application in JIT mode, expelling this polyfill from generation works of course.
To accelerate the execution new applications will caution when the underlying group is more than 2MB and will blunder at 5MB which client can adjust it in angular.json record. These financial plans line up with alerts that can be appeared to clients exploiting Chrome’s Data Saver highlights.
Angular Material the CDK
Angular Material and the Component Dev Kit (CDK), Angular 7 highlights visual upgrades in Material Design which received a major update in 2018, refresh as well as virtual scrolling, for dynamically loading and unloading parts of the DOM to build high-performing, large lists of data. Likewise, applications can be fitted with a simplified capacity by bringing in the DragDropModule or the ScrollingModule.
The scrolling package <cdk-virtual-scroll-viewport> gives aides to orders that respond to scroll occasions. Virtual Scrolling empowers stacking and emptying components from the DOM dependent on the obvious parts. It empowers a performant approach to mimic all things being rendered by making the tallness of the compartment component equivalent to the stature of a complete number of components to be rendered, and after that just rendering the things in view makes quick encounters for clients with vast scroll able records.
Angular Compatibility Compiler (ngcc)
Much the same as the name proposes, this compiler will be utilized to change the node_modules compiled with the ngc to node_modules which are perfect with the new Ivy renderer. Angular Compatibility compiler changes over node_moduls ordered with ngc, into node_modules which seem to have been accumulated with ngtsc. This transformation will permit such “heritage” bundles to be utilized by the Ivy rendering motor.
It’s used for bootstrapping modules that need to bootstrap a component. Angular 7 added a new life-cycle hook (ngDoBootstrap) and interface (DoBootstrap). For example
Better Error Handling
Angular 7 has an improved error handling for @Output if property is not initialized
Dependency Updates In Angular 7
- TypeScript 3.1 support
Angular 7 have updated TypeScript version from 2.7 to 3.1 which is it’s the latest release. It’s compulsory to use TypeScript’s latest version while working with Angular 7. Usually Angular lags a few releases behind, so they have done that to match latest TypeScript version for once.
- RxJS 6.3
The latest version of RxJs(version 6.3.3) is added in Angular 7 with it new exciting additions and changes. These changes provide developers a boost in performance and easier to debug call stacks and improvement in modularity also making it as backward compatible as possible.
- Added Support for Node v10
Team Angular 7 now support the Node V10 with backward compatibility as well, check out what’s new in Node v10.
Angular Elements with Slot
Angular 6.1 empowers the element of ViewEncapsulation.ShadowDom, which is extraordinary for Angular Elements which presently underpins content projection utilizing web models for custom components. Another standard HTML component, presented by the Web Component Specification which is opening. This element is presently accessible, empowering parts with a layout.
That can later be used as an Angular Element like this:
New ng-compiler gives a quickened eight-stage assemblage and decrease of substantial application estimate around multiple times. The new compiler is fit for cutting edge 8-stage turning early aggregation. Most applications can expect a monstrous decrease of 95-99% in pack sizes.
Splitting of @angular/core
One of the inconveniences of Angular is its complete multipurposeness. It’s an expansive system itself consequently gives modules which you presumably needn’t bother with, in this manner group Angular has part @angular/core past the limits introduced no under 418 modules.
Another notice has been added on the off chance that you attempt to trigger a route outside of the Angular zone, As it doesn’t work in the event that you do as such, Angular currently logs a notice (just being developed mode). Likewise add navigation execution context info to activation hooks.
Still no Ivy
The Angular group won’t focus on a last course of events however as per the official blog entry, Ivy is still under dynamic improvement and isn’t a piece of the v7 release. They note in reverse similarity approval started with the energizing application and we are anticipating that a total beta should dispatch some place in rendition 8. Pursue the advancement yourself on the GitHub Ivy Renderer issue under the authority Angular repo. The best news? They completely expect that Ivy can be discharged in a minor discharge as long as it’s completely tried and approved. Perhaps we’ll see it in the following form of Angular 7.
The documentation on angular.io now updated the reference material for the Angular CLI.
Few things have been deprecated in latest Angular 7 like If you were using <ngForm> to declare a form in your template (you don’t have to, as form also activates the NgForm directive), this selector is now deprecated and should be replaced by <ng-form>.
How to update to Angular 7
If you are on already running your Angular App on Angular 6 & RXJS 6, just update your @angular cli/core and also update your angular material.
Or Visit update.angular.io for detailed information and guidance on updating your application. Developers have reported that Angular 7 update is faster than ever, and many apps take less than 10 minutes to update.
Check out More of the Angular 7 New Features Below:
- Angular Console — A downloadable console for starting and running Angular projects on your local machine
- @angular/fire — AngularFire has a new home on npm, and has its first stable release for Angular
- NativeScript — It’s now possible to have a single project that builds for both web and installed mobile with NativeScript
- StackBlitz — StackBlitz 2.0 has been released and now includes the Angular Language Service and more features like tabbed editing
- Improved Accessibility of Selects (selectelement inside of a mat-form-field)
- bazel: Initial commit of protractor_web_test_suite
- compiler-cli: update tsickle to 0.29.x
- core: export defaultKeyValueDiffers to private API
- Platform-Browser: add HammerJS lazy-loader symbols to public API
- Service-Worker: add support for ? in SW config globbing
Summing up all the above highlights, Angular v7 resembles a significantly more available arrangement concentrated on the cutting edge mechanical patterns included highlights like bitcoin mining, Virtual looking over, drag-drop, Angular material and some progressively, still no word on Ivy in a present rendition. Angular Team has done some incredible employment for improving Angular. On the off chance that you are anticipating actualizing your own answer dependent on the web and portable innovations, make a point to consider Angular 7 as the effective, forward-thinking advancement structure.