Angular 6: Alguma Mudança ou Mesma Coisa?

Angular 6 chegou prometendo mudanças, mas não entregou muita novidade. Com só dois comandos novos no CLI, a expectativa de grandes melhorias pode não se confirmar. Trocar o Angular 5 pelo 6 pode parecer mais uma tarefa chata que você preferiria evitar.

Novos Comandos do CLI: Fazem Diferença?

Conheça os novos comandos do Angular CLI: update e add. Vamos ver o que eles realmente fazem.

ng update

O ng update <package> verifica o packages.json e recomenda atualizações. As bibliotecas podem ter seus próprios scripts, chamados schematics, que ajudam a atualizar sem estragar o build.

ng add

O ng add facilita a adição de bibliotecas ao projeto, como o ng add @angular/material. O que antes era mais complicado, agora é bem mais fácil.

Novo Arquivo de Configuração

O arquivo agora é angular.json, substituindo o .angular-cli.json. Uma mudança simples que precisa ser feita.

ng new: Criando Workspaces

Com o ng new, você pode criar workspaces e gerenciar vários apps em um só projeto.

Suporte para Typescript 2.7

Agora tem compatibilidade com Typescript 2.7, como esperado.

RxJS 6: Mudanças Simples

RxJS 6 traz algumas mudanças:

  • Novo jeito de fazer import.
  • Mudanças no pipe().

Para entender melhor, veja as referências oficiais.

Ivy: Ainda Não

Ivy promete mudar tudo, mas ainda não está aqui. Seguimos esperando melhorias no desempenho e tamanho.

Atualização: Como Fazer?

O Guia de Atualização do Angular ajuda na migração para o Angular 6. Aqui está um guia rápido.

Como Atualizar? Passo a Passo

Comece atualizando o CLI, global e localmente.

$ npm i -g @angular/cli  # Atualiza o CLI global
$ npm i @angular/cli      # Atualiza o CLI local

$ yarn global add @angular/cli  # O mesmo com yarn
$ yarn add @angular/cli

Usando o ng update

ng update @angular/cli  # Atualiza para angular.json
ng update @angular/core  # Atualiza o @angular/core

Para Angular Material e RxJS:

ng update @angular/material  # Atualiza o Angular Material
ng update rxjs               # Atualiza o RxJS

Compartilhe suas experiências e dúvidas. Estamos juntos nesse processo de atualização!