Skip to main content

Command Palette

Search for a command to run...

Angular v21 features

Published
•2 min read•View as Markdown
S

I am a full-stack developer with 9+ years of experience, passionate about the JavaScript ecosystem. I have a bachelor's degree in computer science. I am most skilled and passionate about Angular and React. I am able to provide meaningful contributions to the design, installation, testing, and maintenance of any type of software system. I like to challenge myself in new roles. I have built and successfully delivered applications in multiple domains. In my free time, I like to write blogs related to software development. I have the pleasure of working on exciting projects across industries. The applications that I developed were scalable, deployable, and maintainable. I have a vision of providing cutting-edge web solutions and services to enterprises. Developed zero-to-one products.

The Angular team now offers three different ways to help you in using and developing components:

  • Use Angular Aria for accessible, headless components that you are able to style yourself however you want

  • Use the CDK for behavior primitives such as Drag and Drop that you can include in your own, custom-built components.

  • Use Angular Material for a full library of readily styled, opinionated components following Material Design principles. You can customize the components by using your own theming.

@let isValidNumber = /\d+/.test(someValue);

@if (!isValidNumber) {
  <p>{{someValue}} is not a valid number!</p>
}

Press enter or click to view image in full size

A screenshot of a code editor and debugger showing an Angular component with two initialized signals, sig and sig2. The debugger is paused on a debugger statement, and the inspection pane displays the current value of the sig signal as “hello”, along with the signal function. On the right, the Scope panel shows the structure of sig and sig2 within the component’s scope.

  • You can now customize the IntersectionObserver options for @defer triggers related to on viewport, for example:
@defer (on viewport({trigger, rootMargin: '100px'}) {
  <section>Content</section>
}

And in case you missed it — these are only the updates since Angular v20.2. If you only tune in every major release you might have missed: