{"id":232336,"date":"2023-01-13T16:30:00","date_gmt":"2023-01-13T13:30:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=232336"},"modified":"2022-11-10T08:49:02","modified_gmt":"2022-11-10T05:49:02","slug":"novas-alteracoes-de-suporte-angular-typescript-na-versao-10","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pt-pt\/novas-alteracoes-de-suporte-angular-typescript-na-versao-10\/","title":{"rendered":"Novas altera\u00e7\u00f5es de suporte Angular TypeScript na vers\u00e3o 10"},"content":{"rendered":"\n<p>Angular lan\u00e7ou recentemente sua vers\u00e3o 10 e est\u00e1 repleta de recursos. Uma mudan\u00e7a importante \u00e9 o fato de que seu novo suporte a TypeScript quebra a compatibilidade com vers\u00f5es anteriores. Vamos ver o que h\u00e1 de novo e como isso beneficia os desenvolvedores Angular.<\/p>\n<p>As altera\u00e7\u00f5es no suporte ao TypeScript no Angular 10 podem ser resumidas em tr\u00eas \u00e1reas:<\/p>\n<h2>Novo suporte ao TypeScript 3.9<\/h2>\n<p>Angular 10 \u00e9 um grande lan\u00e7amento publicado em 24 de junho e carregado com muitas novas adi\u00e7\u00f5es: de componentes de interface do usu\u00e1rio, como um novo <a href=\"https:\/\/next.material.angular.io\/components\/datepicker\/overview#date-range-selection\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">seletor de intervalo de datas,<\/a> a grandes mudan\u00e7as sob o cap\u00f4, como o suporte \u00e0 vers\u00e3o TypeScript.<\/p>\n<p>O suporte ao Angular <a href=\"https:\/\/startfunction.com\/tag\/typescript\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TypeScript<\/a> foi atualizado muito rapidamente, mostrando um compromisso completo com o superconjunto tipado do JavaScript:<\/p>\n<ul>\n<li>Angular 9 lan\u00e7ado em 6 de fevereiro com suporte para TypeScript 3.7<\/li>\n<li>Angular 9.1 lan\u00e7ado em 25 de mar\u00e7o introduziu suporte para TypeScript 3.8<\/li>\n<li>Angular 10 agora suporta apenas TypeScript 3.9<\/li>\n<\/ul>\n<p>Observe que esta \u00e9 uma altera\u00e7\u00e3o importante: o TypeScript 3.8 e anteriores n\u00e3o s\u00e3o mais compat\u00edveis com o Angular e, se voc\u00ea por algum motivo precisar deles, n\u00e3o dever\u00e1 atualizar para o Angular 10 para preservar a integridade do seu aplicativo.<\/p>\n<p><a href=\"https:\/\/github.com\/microsoft\/tslib\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TSlib<\/a>, a biblioteca de tempo de execu\u00e7\u00e3o oficial do TypeScript que cont\u00e9m todas as fun\u00e7\u00f5es auxiliares do TypeScript, foi atualizada para a vers\u00e3o 2.0.<\/p>\n<p><a href=\"https:\/\/github.com\/palantir\/tslint\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TSLint<\/a>, a ferramenta de an\u00e1lise est\u00e1tica que verifica o c\u00f3digo TypeScript quanto a erros de legibilidade, manuten\u00e7\u00e3o e funcionalidade, foi atualizada para a vers\u00e3o 6. Esta \u00e9 a \u00faltima vers\u00e3o principal do TSLint antes de se tornar obsoleta, portanto, \u00e9 prov\u00e1vel que uma nova vers\u00e3o do Angular introduza suporte para <a href=\"https:\/\/github.com\/typescript-eslint\/typescript-eslint\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TypeScript ESLint<\/a>, a evolu\u00e7\u00e3o do TSLint que permite que o ESLint d\u00ea suporte ao TypeScript.<\/p>\n<h2>Nova estrutura do projeto<\/h2>\n<p>Outra \u00e1rea onde o suporte ao Angular TypeScript tamb\u00e9m foi atualizado \u00e9 no layout do projeto. A vers\u00e3o 10 agora apresenta um novo <code>tsconfig.base.json<\/code>. Este novo arquivo funciona em conjunto com o tradicional <code>tsconfig.json<\/code>:<\/p>\n<ul>\n<li>o <code>tsconfig.json<\/code>arquivo cont\u00e9m uma lista de caminhos para outros arquivos de configura\u00e7\u00e3o TypeScript inclu\u00eddos no projeto atual para determinar a qual arquivo de configura\u00e7\u00e3o um arquivo pertence para que ele possa aplicar as op\u00e7\u00f5es apropriadas. Embora os editores de c\u00f3digo e o servidor de linguagem do TypeScript usem esse arquivo para uma melhor experi\u00eancia de desenvolvimento, os compiladores n\u00e3o.<\/li>\n<li>O <code>tsconfig.base.json<\/code>arquivo especifica as op\u00e7\u00f5es b\u00e1sicas do compilador TypeScript e Angular que todos os projetos no espa\u00e7o de trabalho herdam.<\/li>\n<\/ul>\n<p>Atualizar um aplicativo com <code>ng update<\/code>atualizar\u00e1 automaticamente a estrutura para usar o novo <code>tsconfig.base.json<\/code>.<\/p>\n<h2>Novas configura\u00e7\u00f5es estritas<\/h2>\n<p>Angular 10 agora oferece uma nova op\u00e7\u00e3o de comando CLI <code>ng new<\/code>. Ao criar um novo espa\u00e7o de trabalho com<\/p>\n<p><code>ng new --strict<\/code><\/p>\n<p>a nova \u00e1rea de trabalho ter\u00e1 novas configura\u00e7\u00f5es ativadas para ativar o modo estrito no TypeScript e configurar regras de linting para evitar declara\u00e7\u00f5es de tipo <code>any<\/code>. Isso permite ajudar a detectar bugs com anteced\u00eancia e tamb\u00e9m permite que a CLI execute otimiza\u00e7\u00f5es avan\u00e7adas no aplicativo.<\/p>\n<h2>Mais mudan\u00e7as no Angular 10<\/h2>\n<p>Esta postagem resumiu as altera\u00e7\u00f5es no suporte ao Angular TypeScript. H\u00e1 muitas outras mudan\u00e7as sobre as quais voc\u00ea pode ler na postagem do blog da <a href=\"https:\/\/blog.angular.io\/version-10-of-angular-now-available-78960babd41\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">vers\u00e3o Angular 10<\/a><\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/startfunction.com\" class=\"external external_icon\">startfunction.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>O suporte ao TypeScript 3.9 e as novas bibliotecas TS s\u00e3o as grandes mudan\u00e7as nesta vers\u00e3o.<\/p>\n","protected":false},"author":1,"featured_media":236900,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[898,753,722,785,846],"tags":[1170],"class_list":["post-232336","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codigo-2","category-codigo-aberto","category-desenvolvedor","category-software-livre","category-tutoriais","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts\/232336","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/comments?post=232336"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts\/232336\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/media\/236900"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/media?parent=232336"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/categories?post=232336"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/tags?post=232336"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}