Przejdź do treści
School IT / Przestrzeń do nauki

Instalacja i pierwszy ekran

Zanim poznasz jakiekolwiek pojęcie Angulara, uruchomisz działającą stronę i zmienisz na niej napis. Po drodze nauczysz się, skąd system wie, gdzie szukać programu ng, i co zrobić, gdy VS Code przy pierwszym uruchomieniu odmawia współpracy.

Angular 22 Node.js npm Angular CLI PATH VS Code
CEL LEKCJI

Czego się dziś nauczysz

  • Sprawdzisz wersję Node.js i npm i ocenisz, czy wystarczy dla Angulara 22.
  • Wyjaśnisz, czym jest zmienna środowiskowa Path, i dopiszesz do niej brakujący folder.
  • Zainstalujesz Angular CLI i odpowiesz na pytania, które zada przy pierwszym uruchomieniu.
  • Rozpoznasz błąd „uruchamianie skryptów jest wyłączone” w terminalu VS Code i naprawisz go bez uprawnień administratora.
  • Utworzysz projekt poleceniem ng new i otworzysz go w VS Code.
  • Uruchomisz i zatrzymasz serwer deweloperski.
  • Zmienisz tekst na stronie i zobaczysz przeładowanie na żywo.
  • Odróżnisz ostrzeżenie (żółte) od błędu (czerwonego) w terminalu.

Przygotowanie: brak — to pierwsza lekcja. Potrzebujesz komputera z Windows 10/11, dostępu do internetu i edytora VS Code. Przewidywany czas: 2 × 45 min z zadaniami.

TEORIA

Po co osobne narzędzia

Zwykłą stronę HTML wystarczy otworzyć w przeglądarce. Angular tak nie działa: kod, który piszesz, jest najpierw tłumaczony (kompilowany), a dopiero wynik trafia do przeglądarki. Dlatego potrzebny jest program, który to tłumaczenie wykonuje i podaje gotowy wynik — serwer deweloperski.

Do pracy potrzebujesz trzech programów. Instalujesz dwa, trzeci przychodzi w pakiecie:

ProgramDo czego służyJak go zdobyć
Node.jsuruchamia JavaScript poza przeglądarką; Angular używa go do kompilowania Twojego koduinstalator ze strony nodejs.org, wersja oznaczona LTS
npmpobiera biblioteki (Angulara, Bootstrapa) z internetuinstaluje się razem z Node.js
Angular CLI (ng)tworzy projekt, generuje pliki, uruchamia serwerpoleceniem npm install -g @angular/cli

Jaka wersja Node.js

Angular 22 wymaga Node.js w wersji 22.22.3 lub nowszej z linii 22, 24.15 lub nowszej z linii 24 albo 26 i nowszej. Najprościej: pobierz z nodejs.org aktualną wersję LTS. Starsza wersja nie zablokuje instalacji, ale pierwsze polecenie ng zakończy się komunikatem „The Angular CLI requires a minimum Node.js version…”.

Wszystkie polecenia z tego kursu wpisujesz w terminalu. W VS Code otwierasz go z menu Terminal → New Terminal albo skrótem Ctrl+` (klawisz pod Esc). Terminal otwiera się w folderze, który masz otwarty w VS Code — to ważne, bo większość poleceń działa tylko w folderze projektu.

TEORIA

Zmienne środowiskowe i Path — skąd system wie, gdzie jest ng

Gdy wpisujesz w terminalu node albo ng, system nie przeszukuje całego dysku. Zagląda tylko do folderów wymienionych w zmiennej środowiskowej Path. Zmienna środowiskowa to po prostu nazwa z przypisaną wartością, którą system przechowuje dla wszystkich programów — a wartością Path jest lista folderów rozdzielonych średnikami.

Dla Angulara ważne są dwa wpisy:

Folder w PathCo w nim jestKto go dopisuje
C:\Program Files\nodejs\node.exe i npminstalator Node.js (zmienna systemowa)
C:\Users\nazwa\AppData\Roaming\npmprogramy instalowane przez npm install -g, w tym nginstalator Node.js (zmienna użytkownika)

Jak sprawdzić, co jest w Path

terminal PowerShell w VS Code
$env:Path -split ';'      # wypisuje foldery z Path, każdy w osobnym wierszu
where.exe node            # pokazuje, gdzie system znalazł node.exe
where.exe ng              # to samo dla ng (zadziała po instalacji CLI)
npm config get prefix     # folder, do którego npm instaluje programy globalne
przykładowy wynik where.exe
C:\Program Files\nodejs\node.exe

Jak dopisać brakujący folder

  1. Naciśnij Win+R, wpisz sysdm.cpl i zatwierdź. Przejdź na kartę Zaawansowane i kliknij Zmienne środowiskowe….
    Bez uprawnień administratora: w menu Start wpisz „Edytuj zmienne środowiskowe dla konta” — otworzy się okno tylko ze zmiennymi Twojego konta.
  2. W górnej części (Zmienne użytkownika) zaznacz Path i kliknij Edytuj….
  3. Kliknij Nowy i wklej brakujący folder, np. wynik polecenia npm config get prefix.
  4. Zatwierdź wszystkie okna przyciskiem OK.
  5. Zamknij całe VS Code (nie tylko terminal) i otwórz je ponownie.

Dlaczego trzeba zamknąć całe VS Code

Każdy program dostaje kopię zmiennych środowiskowych w chwili uruchomienia. Terminal w VS Code dziedziczy je od VS Code, a nie od systemu. Jeśli VS Code było otwarte podczas instalacji Node.js albo zmiany Path, nowy terminal w tym samym oknie nadal ma starą listę i dalej nie znajdzie node ani ng. To najczęstsza przyczyna błędu „nie jest rozpoznawany” zaraz po instalacji.

Nie usuwaj niczego z Path

Przy edycji dopisujesz nowy wiersz, nigdy nie kasujesz istniejących. Usunięcie wpisu, którego nie rozumiesz, może zepsuć inne programy — w pracowni także Twoim kolegom z następnej zmiany.

PRZYKŁAD 1

Sprawdź, czy masz czym pracować

Zanim cokolwiek zainstalujesz, sprawdź, co już jest na komputerze. Otwórz VS Code, potem terminal, i wpisz dwa polecenia.

terminal
node --version
npm --version
wynik w terminalu (numery mogą się różnić)
v24.21.0
11.6.2

Dwa numery wersji oznaczają, że Node.js i npm są zainstalowane i widoczne w Path. Liczba przed pierwszą kropką to wersja główna. Jeśli zamiast numeru widzisz komunikat „Termin node nie jest rozpoznawany…”, Node.js nie jest zainstalowany albo jego folder nie trafił do Path — wróć do poprzedniej sekcji.

Zatrzymaj się

Porównaj swoją wersję z wymaganiami Angulara 22 z ramki „Jaka wersja Node.js”. Czy Twoja wersja wystarczy? Jeśli to np. v20.11.0 — nie wystarczy, trzeba zainstalować nowszą.

PRZYKŁAD 2

Zainstaluj Angular CLI

CLI instalujesz raz, globalnie — przełącznik -g sprawia, że program trafia do folderu z Path, a nie do jednego projektu.

terminal
npm install -g @angular/cli
ng version

Przy pierwszym uruchomieniu ng zada dwa pytania. Pojawiają się tylko raz na komputerze:

PytanieOdpowiedźCo to znaczy
Would you like to enable autocompletion?Enter (Yes)klawisz Tab będzie podpowiadał polecenia ng
Would you like to share pseudonymous usage data…?Enter (No)CLI nie wysyła statystyk do zespołu Angulara
wynik ng version (fragment)
Angular CLI       : 22.2.2
Node.js           : 24.21.0
Package Manager   : npm 11.6.2
Operating System  : win32 x64

Logo Angulara i tabela wersji oznaczają sukces. Jeśli zamiast tego widzisz czerwony komunikat o ng.ps1 — to najczęstszy problem pierwszego uruchomienia. Opis i naprawa są w następnej sekcji.

Zatrzymaj się

Wpisz where.exe ng. W jakim folderze leży program ng? Porównaj ze ścieżką z polecenia npm config get prefix.

TEORIA

Pierwsze uruchomienie w VS Code — czego się spodziewać

Prawie każdy, kto pierwszy raz uruchamia Angulara w VS Code na Windows, trafia na co najmniej jeden z poniższych komunikatów. Żaden nie oznacza, że coś jest zepsute na stałe.

1. „Uruchamianie skryptów jest wyłączone w tym systemie”

komunikat w terminalu PowerShell
ng : Nie można załadować pliku C:\Users\uczen\AppData\Roaming\npm\ng.ps1,
ponieważ uruchamianie skryptów jest wyłączone w tym systemie.
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

Domyślnym terminalem w VS Code jest PowerShell, który ze względów bezpieczeństwa nie uruchamia skryptów .ps1 — a npm instaluje ng właśnie jako skrypt ng.ps1. Ten sam komunikat może dotyczyć npm.ps1. Masz trzy wyjścia, od najlepszego:

RozwiązanieZasięgKiedy
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSignedtylko Twoje konto, na stałe; nie wymaga administratorawłasny komputer — zalecane także w dokumentacji Angulara
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypasstylko bieżące okno terminalakomputer w pracowni — po zamknięciu terminala wszystko wraca
terminal Command Prompt zamiast PowerShellbez zmiany ustawieńgdy żadne polecenie Set-ExecutionPolicy nie jest dozwolone

Command Prompt włączysz w VS Code strzałką obok znaku + w panelu terminala → Command Prompt. Żeby był domyślny: ta sama strzałka → Select Default Profile → Command Prompt. Jeszcze jedna droga awaryjna: zamiast ng wpisz ng.cmd — omija skrypt .ps1.

2. „Termin ng nie jest rozpoznawany”

komunikat w terminalu PowerShell
ng : Termin „ng” nie jest rozpoznawany jako nazwa polecenia cmdlet, funkcji,
pliku skryptu lub programu wykonywalnego.

System nie znalazł ng w żadnym folderze z Path. Sprawdź po kolei: czy instalacja npm install -g @angular/cli zakończyła się bez czerwonych błędów; czy zamknąłeś i otworzyłeś całe VS Code po instalacji; czy folder z npm config get prefix jest w Path (sekcja wyżej). W Command Prompt ten sam problem wygląda tak: „’ng’ nie jest rozpoznawane jako polecenie wewnętrzne lub zewnętrzne…”.

3. Okna, które pokaże samo VS Code

Co widziszCo zrobić
Do you trust the authors of the files in this folder?Przy własnym projekcie kliknij Yes, I trust the authors. W trybie ograniczonym (Restricted Mode) część funkcji edytora jest wyłączona.
Do you want to install the recommended extensions…?Kliknij Install. Projekt poleca rozszerzenie Angular Language Service — podpowiada i sprawdza kod w plikach .html komponentów.
Czerwone podkreślenia i Cannot find module '@angular/core’ w plikach .tsBrak folderu node_modules (projekt skopiowany bez niego albo instalacja przerwana) — wpisz npm install w folderze projektu. Albo otworzyłeś w VS Code folder nadrzędny zamiast folderu projektu — otwórz File → Open Folder… bezpośrednio klub-gier.
PRZYKŁAD 3

Utwórz projekt i uruchom serwer

Jedno polecenie tworzy komplet plików i pobiera biblioteki. Przełączniki odpowiadają z góry na pytania, które CLI zadałoby po kolei: zwykły CSS, bez renderowania po stronie serwera i bez plików dla narzędzi AI.

terminal — w folderze, w którym trzymasz projekty
ng new klub-gier --style=css --ssr=false --ai-config=none
cd klub-gier
npm start
wynik w terminalu (fragment)
✔ Packages installed successfully.
...
Application bundle generation complete.

Watch mode enabled. Watching for file changes...
  ➜  Local:   http://localhost:4200/

Instalacja bibliotek trwa od kilkunastu sekund do kilku minut. Gdy w terminalu pojawi się adres http://localhost:4200/, otwórz go w przeglądarce (z Ctrl kliknięcie w adres w terminalu) — zobaczysz stronę powitalną Angulara.

Teraz otwórz projekt w edytorze: File → Open Folder… → folder klub-gier. Od tej chwili terminal w VS Code otwiera się już w folderze projektu.

Nazwa projektu

Nazwa musi zaczynać się od litery i może zawierać tylko litery, cyfry i myślniki. ng new "Klub Gier" zakończy się komunikatem Schematic input does not validate against the Schema — przez spację. Dobre nazwy: klub-gier, sklepik, zadanie4.

npm start uruchamia serwer deweloperski — robi to samo co ng serve. Serwer działa, dopóki nie zamkniesz terminala albo nie naciśniesz Ctrl+C.

Zatrzymaj się

Polecenie ng new wykonujesz raz na projekt, a npm start — na początku każdych zajęć. Co zobaczysz w przeglądarce, gdy zatrzymasz serwer i odświeżysz stronę?

PRZYKŁAD 4

Zmień jeden napis

Najkrótsza droga do zobaczenia, że to naprawdę Twój projekt. Plik app.html zawiera kilkaset wierszy strony powitalnej — usuń je wszystkie.

src/app/app.html — pełny plik
<h1>Klub gier — ekran startowy</h1>
<p>Tu wkrótce pojawi się lista wydarzeń.</p>

Zapisz plik (Ctrl+S) i nie odświeżaj strony ręcznie. Przeglądarka sama pokaże nowy tekst w ułamku sekundy — serwer obserwuje pliki i po każdym zapisie przebudowuje aplikację. To przeładowanie na żywo.

wynik w przeglądarce
Klub gier — ekran startowy
Tu wkrótce pojawi się lista wydarzeń.

W terminalu pojawi się jednocześnie żółty komunikat:

ostrzeżenie w terminalu
▲ [WARNING] NG8113: All imports are unused
    src/app/app.ts:5:2:
      5 │   imports: [RouterOutlet],

To ostrzeżenie, nie błąd — strona działa. Usunięta strona powitalna zawierała znacznik, który korzystał z RouterOutlet; teraz ten import nie jest potrzebny. W następnej lekcji uporządkujesz plik app.ts i ostrzeżenie zniknie.

Żółte czy czerwone

▲ WARNING (żółte) — kompilator zwraca uwagę, ale aplikacja działa. ✘ ERROR (czerwone) — kompilacja się nie udała, przeglądarka pokazuje ostatnią działającą wersję albo nakładkę z błędem. Czytaj zawsze pierwszy czerwony komunikat: plik i numer wiersza są podane wprost.

ELEMENTY WBUDOWANE

Zestawienie elementów

ElementZnaczenieUwagi
node --versionwersja Node.jsAngular 22: 22.22.3+, 24.15+ albo 26+.
npm --versionwersja npmPrzychodzi z Node.js.
npm install -g pakietinstalacja programu dla całego kontaTrafia do folderu z npm config get prefix.
ng versionwersje CLI, Node.js i npmPierwsze uruchomienie zadaje dwa pytania.
ng new nazwanowy projekt w nowym folderzeRaz na projekt; nazwa bez spacji.
--style=css --ssr=false --ai-config=noneodpowiedzi na pytania ng newZwykły CSS, bez SSR, bez plików dla narzędzi AI.
cd folderprzejście do folderuPolecenia projektu działają tylko w jego folderze.
npm start / ng serveserwer deweloperskiAdres http://localhost:4200/.
ng serve --port 4300serwer na innym porcieGdy 4200 jest zajęty.
Ctrl+Czatrzymanie serweraW oknie terminala, w którym działa.
Pathlista folderów, w których system szuka programówPo zmianie zamknij całe VS Code.
where.exe programgdzie system znalazł programPusty wynik = programu nie ma w Path.
Set-ExecutionPolicy -Scope CurrentUser RemoteSignedzgoda na skrypty .ps1 dla Twojego kontaNaprawia błąd ng.ps1; bez administratora.
Angular Language Servicerozszerzenie VS CodePodpowiedzi i błędy w szablonach .html.
CZĘSTE BŁĘDY

Zanim utkniesz

Co widziszPrzyczyna i naprawa
ng.ps1 … uruchamianie skryptów jest wyłączonePowerShell blokuje skrypty. Set-ExecutionPolicy -Scope CurrentUser RemoteSigned, terminal Command Prompt albo ng.cmd.
Termin „ng” nie jest rozpoznawany…VS Code było otwarte podczas instalacji — zamknij je całe. Jeśli nie pomoże, dopisz wynik npm config get prefix do Path.
Termin „node” nie jest rozpoznawany…Node.js niezainstalowany albo brak C:\Program Files\nodejs\ w Path.
The Angular CLI requires a minimum Node.js version of v22.22.3…Za stary Node.js. Zainstaluj aktualną wersję LTS.
npm error enoent Could not read package.jsonnpm start wpisane poza folderem projektu. Najpierw cd klub-gier.
This command is not available when running the Angular CLI outside a workspaceTo samo dla poleceń ng — terminal stoi w złym folderze.
Port 4200 is already in useSerwer już działa w innym terminalu. Zatrzymaj go Ctrl+C albo użyj ng serve --port 4300.
Strona jest biała, w terminalu czerwony ERRORBłąd kompilacji. Przeczytaj pierwszy komunikat — podaje plik i wiersz.
Żółte NG8113: All imports are unusedTylko ostrzeżenie po wyczyszczeniu app.html. Strona działa; porządek w lekcji 02.
Zmiany w pliku nic nie dająEdytujesz plik w innym folderze niż ten, w którym działa serwer, albo nie zapisałeś pliku (kropka przy nazwie karty w VS Code).
ZADANIA

Zadania

ZAD 1Nagłówek Twojej klasy★☆☆

Zmień nagłówek w app.html na nazwę swojej klasy, np. 4TP — nasze wydarzenia, a akapit pod nim na jedno zdanie o tym, czym zajmuje się klub.

Kryterium sukcesu: nowy tekst pojawia się w przeglądarce bez ręcznego odświeżania.

Podpowiedź

Plik src/app/app.html. Pamiętaj o zapisaniu pliku.

ZAD 2Wizytówka klubu★☆☆

Zbuduj w app.html wizytówkę klubu ze zwykłego HTML-a: nagłówek h1 z nazwą klubu, akapit z dniem i godziną spotkań, nagłówek h2 „Najbliższe wydarzenia” i listę ul z trzema wydarzeniami, które chciałbyś zorganizować w szkole.

Kryterium sukcesu: na stronie widać dwa nagłówki, akapit i listę wypunktowaną z trzema pozycjami.

Podpowiedź

HTML działa tu tak samo jak na zwykłej stronie. Każda pozycja listy to osobny <li>.

ZAD 3Uruchom od zera★★☆

Zatrzymaj serwer, zamknij przeglądarkę i całe VS Code. Następnie uruchom projekt ponownie tak, żeby strona znów działała. Zapisz w zeszycie kolejne kroki — od otwarcia VS Code do zobaczenia strony.

Kryterium sukcesu: potrafisz uruchomić projekt bez zaglądania do lekcji, a Twoja lista ma nie więcej niż pięć kroków.

Podpowiedź

Otwarcie folderu, terminal, jedno polecenie, adres w przeglądarce. ng new nie jest już potrzebne.

ZAD 4Dwa projekty naraz★★☆

Utwórz obok drugi projekt sklepik (te same przełączniki co w przykładzie 3) i zmień w nim napis na „Sklepik szkolny”. Uruchom oba projekty jednocześnie, każdy w osobnym terminalu. Zapisz, jaki komunikat pojawił się przy drugim serwerze i jak go obszedłeś.

Kryterium sukcesu: w dwóch kartach przeglądarki działają dwie różne strony pod dwoma różnymi adresami.

Podpowiedź

Nowy terminal otwierasz znakiem + w panelu terminala. Port zmienia przełącznik --port; przy npm start trzeba dopisać npm start -- --port 4300 albo użyć ng serve --port 4300.

ZAD 5Detektyw Path★★★

Ustal, skąd system bierze programy, których używasz. Wpisz where.exe node, where.exe npm, where.exe ng i npm config get prefix. Następnie wypisz zawartość Path poleceniem $env:Path -split ';' i znajdź na liście foldery, w których leżą te trzy programy. Zapisz w zeszycie tabelkę: program → folder → czy ten folder jest w Path zmiennych użytkownika, czy systemowych (sprawdź w oknie Zmienne środowiskowe, niczego nie zmieniając).

Kryterium sukcesu: dla każdego z trzech programów potrafisz wskazać wpis w Path, dzięki któremu działa.

Podpowiedź

where.exe może zwrócić kilka plików dla jednego programu (np. ng, ng.cmd, ng.ps1) — wszystkie leżą w tym samym folderze.

ZAD 6Zepsuj i odczytaj komunikat★★★

Dopisz na końcu app.html zamykający znacznik bez otwierającego: </div>. Zapisz plik i odpowiedz w zeszycie na trzy pytania: jaki kod błędu podał terminal (zaczyna się od NG), w którym wierszu i kolumnie wskazał problem, oraz co w tym czasie pokazuje przeglądarka. Napraw błąd. Potem powtórz eksperyment w terminalu: wpisz npm start w folderze nadrzędnym (cd ..) i zapisz komunikat npm.

Kryterium sukcesu: masz zapisane dwa komunikaty błędów z ich przyczynami, a projekt znów działa.

Podpowiedź

Szukaj słowa ERROR i kodu NG5002. Po cd .. wróć do projektu poleceniem cd klub-gier.

PODSUMOWANIE

Co trzeba zapamiętać

  • Angular potrzebuje Node.js (z npm) i Angular CLI; Angular 22 wymaga Node.js 22.22.3+, 24.15+ albo 26+.
  • System szuka programów tylko w folderach z Path; po zmianie Path albo instalacji zamknij całe VS Code.
  • where.exe i npm config get prefix mówią, gdzie leżą programy.
  • Błąd ng.ps1 naprawia Set-ExecutionPolicy -Scope CurrentUser RemoteSigned, terminal Command Prompt albo ng.cmd.
  • ng new tworzy projekt raz; npm start uruchamia serwer na każdych zajęciach.
  • Polecenia projektu wpisujesz w terminalu otwartym w folderze projektu.
  • Strona działa pod http://localhost:4200/, dopóki działa serwer; Ctrl+C go zatrzymuje.
  • Zapisanie pliku odświeża stronę samo.
  • Żółte WARNING — aplikacja działa; czerwone ERROR — czytaj pierwszy komunikat, podaje plik i wiersz.

Sprawdź się: kolega zainstalował Node.js przy otwartym VS Code i dostaje komunikat, że node nie jest rozpoznawany. Co mu poradzisz w pierwszej kolejności i dlaczego?

Dokumentacja: angular.dev — przygotowanie środowiska.

Postęp zapisuje się w tej przeglądarce.