Angular · Programowanie · TypeScript

Aktualizacja Angular 4=>5 i Typescript 2.2.1=>2.5.3

Stwierdziłam ostatnio, że czas zaktualizować pakiety w mojej aplikacji. Kilka miesięcy wcześniej wyszła nowa wersja Angulara (5), więc to był dobry czas na jego aktualizację.

Błąd @angular/compiler-cli requires a peer of typescript but none was installed.

Już na początku aktualizacji okazało się, że mam błąd:

@angular/compiler-cli@5.2.3 requires a peer of typescript@>=2.4.2 <2.7 but none was installed.

Jak widać, nie zgadza się wersja TypeScripta – potrzeba nowszej wersji.

Typescript – aktualizacja w konsoli

No to trzeba było go zaktualizować wykorzystując komendy:

npm install typescript@latest -g

lub

npm upgrade -g typescript

Potem należy sprawdzić wersję TypeScripta:

tsc –version

No i co, gdy dalej jest taka sama wersja? Przydaje się sprawdzenie, gdzie TypeScript jest zainstalowany:

where tsc

scr4

Jak widać, miałam kilka miejsc, w których był zainstalowany TypeScript. Usunęłam więc niepotrzebne ścieżki spoza katalogu nodejs.

Typescript – aktualizacja w Visual Studio

Nie można zapomnieć o tym, że Visual Studio potrzebuje aktualizacji swojego pakietu TypeScript. Nową wersję można pobrać pod linkiem lub wyszukać w liście pakietów (pobierze się automatycznie):

scr7.JPG

Dodatkowo należy wejść w ustawienia projektu, który wykorzystuje TypeScript i ustawić TypeScript version na najbardziej aktualną lub konkretną wersję.

scr6

Co potem? Potem najprawdopodobniej projekt nie będzie się buildował. Wtedy zwykle czyszczę całą solucję, usuwam i instaluję od nowa node_modules i w końcu działa. Ale nie tym razem. Okazuje się, że nie doczytałam komunikatu błędu opisywanego na początku, który wyraźnie wskazywał na wersję TypeScript niższą niż 2.7. Więc wracam do wcześniejszej wersji TypeScript (2.5.3):

npm install typescript@2.5.3

I jeszcze raz aktualizuję Angulara:

npm install @angular/compiler-cli@latest

Po powtórzeniu czyszczenia solucji i przeinstalowaniu pakietów program się builduje.

Po uruchomieniu aplikacji dla pewności można zerknąć w kod HTML i sprawdzić wersję Angulara:

scr8

Typescript – aktualizacja Resharper

Jeśli korzystasz z Resharpera, warto również w nim zmienić wersję TypeScript:

Resharper -> Options -> Code Editing -> TypeScript -> Inspections -> Typescript language level.

 

 

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google+

Komentujesz korzystając z konta Google+. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Connecting to %s