Angular 12, a versão de produção mais recente da popular estrutura da web baseada em TypeScript do Google, recebeu uma atualização.

O Angular 12.1, lançado em 24 de junho, adiciona suporte do compilador para declarações de propriedades abreviadas, bem como correções para o compilador, CLI do compilador, roteador e serviços.

O lançamento pontual do Angular 12.1 também apresenta APIs para ativar o comportamento correto de desmontagem de teste . As correções do compilador referem-se a problemas como interpolação não terminada e restauração de visualização , enquanto as correções do service worker referem-se à nomenclatura, acesso e limpeza de caches do service worker.

Publicado em 12 de maio, o Angular 12 está disponível no GitHub , após vários lançamentos beta e candidatos a lançamento. O Angular 12 descarta o pipeline de compilação e renderização do View Engine legado em favor da tecnologia Ivy mais recente, um pipeline de compilação e renderização de última geração que oferece compilação AOT (antecipada) mais rápida.

A equipe Angular observou que o View Engine será removido em uma versão futura. Bibliotecas atuais que usam View Engine ainda funcionarão com aplicativos Ivy, mas os autores de bibliotecas são aconselhados a iniciar a transição para Ivy.

Também no Angular 12, o serviço de linguagem baseado em Ivy, que fornece recursos como preenchimento de código e dicas dentro de modelos, muda de opt-in para on por padrão. Outros novos recursos e melhorias no lançamento da versão 12:

  • Para melhorar o desempenho da CLI do compilador, a compilação incremental é permitida na presença de arquivos de origem redirecionados .
  • A coalescência nula, para escrever um código mais claro em classes TypeScript, agora funciona com modelos Angular.
  • Tanto o Angular CDK quanto o Angular Material expõem uma nova superfície Sass API projetada para consumo com a nova @usesintaxe. Ao atualizar para o Angular 12, um aplicativo mudará automaticamente para a nova API atualizando via ng update.
  • Ferramentas estão disponíveis para migrar IDs de localização legados para IDs usando os algoritmos mais recentes.
  • Os componentes agora oferecem suporte ao Sass embutido no stylescampo do @component decorador.
  • A execução ng buildagora é padronizada para produção, salvando etapas e ajudando a evitar a implantação acidental de compilações de desenvolvimento.
  • O modo estrito, para detectar erros no início do ciclo de desenvolvimento, é habilitado por padrão na CLI.
  • O empacotador de módulo Webpack 5 está pronto para produção.
  • O suporte para o navegador IE11 foi descontinuado.
  • Para o compilador, é oferecido suporte para transformar recursos de estilo de componente .
  • Para o serviço de idioma, as conclusões de propriedade Angular são fornecidas apenas em modelos .
  • Para o compilador-cli, é introduzida uma contextopção para qualquer solicitação que permita o fornecimento de dados arbitrários de maneira segura. Este recurso atende à necessidade de configurar interceptores no cliente HTTP por solicitação.
  • Para animações, os elementos DOM agora são removidos corretamente quando a visualização raiz é removida. Esta é uma mudança significativa.
  • Para melhorar o desempenho, os métodos não utilizados foram removidos do DomAdapter.
  • Um novo formato é adicionado localize-extract, chamado legacy-migrate, para gerar um arquivo JSON que pode ser usado para mapear IDs de mensagens legadas para canônicas.
  • As verificações de nulos estritas informarão sobre um fragmento potencialmente nulo. Esta é uma mudança significativa.
  • O tipo de token APP-INITIALIZER foi alterado para refletir com mais precisão os tipos de valores de retorno manipulados pelo Angular. Esta é uma mudança significativa.
  • Foi adicionado suporte para desativar animações por meio BrowserAnimationsModulewithConfig.
  • emiteventopção foi adicionada para FormArrayFormGroup. Esta é uma mudança significativa.
  • Mais controle ajustado foi adicionado routerLinkActiveOptions.
  • Implementações de tomadas de roteador personalizadas são permitidas
  • Foi adicionado suporte para TypeScript 4.2 e o suporte para TypeScript 4.0 e TypeScript 4.1 foi eliminado.
  • Implementando o appendAll()método emHttpParams .
  • Para formulários, validadores mínimo e máximo estão sendo introduzidos.
  • Exportação de uma lista de códigos de status HTTP .
  • Adição de um recurso ao Angular Language Service que permite acessar os locais para componentes que usam um arquivo de modelo .
  • A adição de diagnósticos para sugerir a ativação de strictTemplates , fornecendo uma maneira para o servidor de linguagem recuperar diagnósticos de opções do compilador.
  • Um patch que adiciona uma API para recuperar o bloco typecheck do modelo para um modelo, se houver, em um local de arquivo, e seleção do nó TS no TCB correspondente ao nó do modelo no qual a solicitação de um TCB foi feita. Isso ajudará na depuração.

Uma variedade de correções de bugs também foram apresentadas, afetando o compilador, compilador-cli, a ferramenta de compilação do Bazel, o roteador e outras partes do Angular. Uma lista completa de mudanças pode ser encontrada no GitHub. A linha anterior do Angular 11 estreou como lançamento de produção em novembro.

Quer aprender mais sobre Angular? Conheça agora o meu Curso de Angular.

Share This