We’re not done with Angular 17 updates! Here are a few more updates on Signals, Standalone, and Server-side rendering.
Signals
Signals have graduated from developer preview and are now officially part of the framework, except the effect
function that is still being tweaked by the Angular team. A big step for Angular Signals.
Standalone
With Angular 17, a new Angular app is generated with standalone components by default. You can upgrade your Angular CLI to test that out, and if you don’t want to use standalone by default and your new apps, this feature can be turned off in angular.json with the following config:
"projects": {
"my-app": {
"schematics": {
"@schematics/angular:component": {
"standalone": false
}
Code language: JavaScript (javascript)
Server-side rendering
With Angular 17, you can create an app that uses server-side rendering with a single command:
ng new --ssr
If you want to add server-side rendering to an existing app, you can run:
ng add @angular/ssr
It’s also possible to pre-render an Angular app using:
ng build --prerender
That way, you don’t need Node.js hosting and can use static, pre-rendered HTML files. I’ll explore this more in the newsletter before the end of the year.
On that same topic of server-side rendering, hydration graduated developer preview, which means an app rendered on the server side won’t rebuild its entire DOM in the browser. Instead, Angular will take over that DOM and re-hydrate it with up-to-date data as needed.