Angular 14 foi lançado no início deste mês com a atualização mais significativa desde Ivy. Ele inclui dois recursos muito esperados, formulários reativos digitados e componentes autônomos, além de várias pequenas melhorias.
Os formulários reativos estritamente tipados são uma solicitação da comunidade de longa data que pode ser datada do lançamento do Angular 2.
Até o Angular 14, o Reactive Forms não incluía definições de tipo em muitas de suas classes, e o TypeScript não detectava bugs como no exemplo a seguir durante a compilação.
const login = new FormGroup({ email: new FormControl(''), password: new FormControl(''), }); console.log(login.value.notanemail);
Com o Angular 14, FormGroup, formControl e classes relacionadas incluem definições de tipo que permitem que o TypeScript detecte muitos erros comuns.
A migração para os novos Formulários Reativos Digitados não é automática. Os controladores de formulário, grupos, etc. existentes serão prefixados com Untyped durante a atualização, que retém a definição de tipo exata das versões anteriores do Angular.
Para aproveitar os novos formulários reativos tipados, os desenvolvedores precisarão remover manualmente o prefixo não digitado e corrigir quaisquer erros que possam surgir.
Os desenvolvedores podem encontrar mais detalhes na documentação de Formulários Reativos Digitados. A segunda grande mudança fornecida com o Angular 14 é o conceito de componentes autônomos.
Módulos Angular têm sido um assunto contestado há muito tempo, com muitos membros da comunidade alegando que isso leva a complicações desnecessárias nos aplicativos Angular.
Com o Angular 14, agora é possível criar componentes autônomos simplesmente passando a propriedade standalone: true no decorador Component.
@Component({ selector: 'sample-component', standalone: true, template: ``, imports: [ ComponentOne, ComponentTwo, SampleDirective, SampleService, CommonModule] ], }) export class SampleComponent { ... }
Como a injeção de dependência Angular ainda é necessária, muitas definições de módulo foram movidas para o decorador de componentes.
Ainda não está claro como a comunidade adotará esse novo recurso, e a equipe do Angular sinalizou o recurso como uma prévia do desenvolvedor e pode alterar a API em versões futuras.
Esta versão também inclui uma nova framework de diagnóstico estendida, que fornece feedback aprimorado sobre erros de modelo e práticas recomendadas.
Atualmente, o framework inclui dois novos avisos, um para a sintaxe inversa de banana em uma caixa ([]) (que é válida, mas raramente pretendida) e união nula desnecessária (??) quando a entrada não é anulável.
Por fim, o Angular 14 usa o TypeScript 4.7 mais recente e tem como alvo o ES2020 por padrão. Para uma lista completa de mudanças, acesse o anúncio oficial de lançamento
Angular é um software de código aberto disponível sob a licença do MIT. Contribuições são bem-vindas através do repositório Angular GitHub.
Fonte: