{"id":232460,"date":"2023-01-13T16:53:00","date_gmt":"2023-01-13T13:53:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=232460"},"modified":"2022-11-10T09:42:54","modified_gmt":"2022-11-10T06:42:54","slug":"nuove-modifiche-al-supporto-di-typescript-angolari-nella-versione-10","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/it\/nuove-modifiche-al-supporto-di-typescript-angolari-nella-versione-10\/","title":{"rendered":"Nuove modifiche al supporto di TypeScript angolari nella versione 10"},"content":{"rendered":"<p>Angular ha recentemente rilasciato la sua versione 10 ed \u00e8 ricca di funzionalit\u00e0. Un cambiamento importante \u00e8 il fatto che il suo nuovo supporto TypeScript interrompe la compatibilit\u00e0 con le versioni precedenti. Vediamo cosa c&#8217;\u00e8 di nuovo e in che modo avvantaggia gli sviluppatori Angular.<\/p>\n<p>Le modifiche al supporto TypeScript in Angular 10 possono essere riassunte in tre aree:<\/p>\n<h2>Nuovo supporto per TypeScript 3.9<\/h2>\n<p>Angular 10 \u00e8 una major rilasciata il 24 giugno e carica di molte nuove aggiunte: dai componenti dell&#8217;interfaccia utente come un nuovo <a href=\"https:\/\/next.material.angular.io\/components\/datepicker\/overview#date-range-selection\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">selettore di intervalli di date<\/a> a importanti modifiche sotto il cofano come il supporto della versione TypeScript.<\/p>\n<p>Il supporto di Angular <a href=\"https:\/\/startfunction.com\/tag\/typescript\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TypeScript<\/a> \u00e8 stato aggiornato molto velocemente, mostrando un impegno completo per il superset tipizzato JavaScript:<\/p>\n<ul>\n<li>Angular 9 rilasciato il 6 febbraio supportava TypeScript 3.7<\/li>\n<li>Angular 9.1 rilasciato il 25 marzo ha introdotto il supporto per TypeScript 3.8<\/li>\n<li>Angular 10 ora supporta solo TypeScript 3.9<\/li>\n<\/ul>\n<p>Tieni presente che questa \u00e8 una modifica di rilievo: TypeScript 3.8 e precedenti non sono pi\u00f9 supportati su Angular e se per qualsiasi motivo ne hai bisogno, non dovresti aggiornare ad Angular 10 per preservare l&#8217;integrit\u00e0 della tua app.<\/p>\n<p><a href=\"https:\/\/github.com\/microsoft\/tslib\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TSlib<\/a>, la libreria di runtime ufficiale per TypeScript che contiene tutte le funzioni di supporto di TypeScript, \u00e8 stata aggiornata alla versione 2.0.<\/p>\n<p><a href=\"https:\/\/github.com\/palantir\/tslint\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TSLint<\/a>, lo strumento di analisi statica che controlla il codice TypeScript per la leggibilit\u00e0, la manutenibilit\u00e0 e gli errori di funzionalit\u00e0, \u00e8 stato aggiornato alla versione 6. Questa \u00e8 l&#8217;ultima versione principale di TSLint prima che diventasse obsoleta, quindi \u00e8 probabile che una nuova versione di Angular introduca il supporto per <a href=\"https:\/\/github.com\/typescript-eslint\/typescript-eslint\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">TypeScript ESLint<\/a>, l&#8217;evoluzione di TSLint che consente a ESLint di supportare TypeScript.<\/p>\n<h2>Nuova struttura del progetto<\/h2>\n<p>Un&#8217;altra area in cui \u00e8 stato aggiornato anche il supporto Angular TypeScript \u00e8 nel layout del progetto. La versione 10 ora introduce un nuovo <code>tsconfig.base.json<\/code>. Questo nuovo file funziona in combinazione con il tradizionale <code>tsconfig.json<\/code>:<\/p>\n<ul>\n<li>il <code>tsconfig.json<\/code>file contiene un elenco di percorsi ad altri file di configurazione TypeScript inclusi nel progetto corrente per determinare a quale file di configurazione appartiene un file in modo che possa applicare le opzioni appropriate. Mentre gli editor di codice e il server del linguaggio di TypeScript usano questo file per una migliore esperienza di sviluppo, i compilatori no.<\/li>\n<li>Il <code>tsconfig.base.json<\/code>file specifica le opzioni di base del compilatore TypeScript e Angular che ereditano tutti i progetti nell&#8217;area di lavoro.<\/li>\n<\/ul>\n<p>L&#8217; aggiornamento di un&#8217;app con <code>ng update<\/code>aggiorner\u00e0 automaticamente la struttura per utilizzare il nuovo <code>tsconfig.base.json<\/code>.<\/p>\n<h2>Nuove impostazioni rigorose<\/h2>\n<p>Angular 10 ora offre una nuova opzione per il comando CLI <code>ng new<\/code>. Quando crei un nuovo spazio di lavoro con<\/p>\n<p><code>ng new --strict<\/code><\/p>\n<p>il nuovo spazio di lavoro avr\u00e0 nuove impostazioni attivate per attivare la modalit\u00e0 rigorosa in TypeScript e configurare regole di linting per impedire dichiarazioni di tipo <code>any<\/code>. Ci\u00f2 consente di rilevare i bug in anticipo e consente inoltre alla CLI di eseguire ottimizzazioni avanzate sull&#8217;app.<\/p>\n<h2>Altre modifiche in Angular 10<\/h2>\n<p>Questo post ha riassunto le modifiche al supporto di Angular TypeScript. Ci sono molte altre modifiche che puoi leggere nel post del blog sulla <a href=\"https:\/\/blog.angular.io\/version-10-of-angular-now-available-78960babd41\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">versione di Angular 10<\/a><\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/startfunction.com\" class=\"external external_icon\">startfunction.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Il supporto di TypeScript 3.9 e le nuove librerie TS sono i grandi cambiamenti in questa versione.<\/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":[896,751,783,720,844],"tags":[1168],"class_list":["post-232460","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codice","category-open-source-projektmanagement-3","category-software-open-source","category-sviluppatore","category-tutorial","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/232460","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/comments?post=232460"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/232460\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media\/236900"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media?parent=232460"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/categories?post=232460"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/tags?post=232460"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}