Aby odpowiedzieć na jedno z pytań, konieczna jest globalna i lokalna instalacja narzędzi.
Jeśli spróbujesz uruchomić ng serve
aplikację bez lokalnej instalacji CLI (tylko instalacja globalna), pojawi się następujący błąd.
Musisz być w projekcie Angular CLI, aby użyć polecenia serv.
Wydrukuje również tę wiadomość:
Please take the following steps to avoid issues:
"npm install --save-dev @angular/cli@latest"
Uruchom to npm
polecenie, aby zaktualizować CLI lokalnie i unikaj ostrzeżeń.
Inne pytanie: wygląda na to, że nie muszą być zsynchronizowane, ale prawdopodobnie najlepiej, aby były w celu uniknięcia jakichkolwiek nietypowych zachowań w narzędziu lub jakichkolwiek niezgodności z kodem generowanym przez narzędzie.
Dlaczego potrzebujemy zarówno instalacji globalnej, jak i instalacji lokalnej?
Instalacja globalna jest potrzebna do uruchomienia nowej aplikacji. ng new <app-name>
Polecenie jest uruchamiane za pomocą globalnej instalację CLI. W rzeczywistości, jeśli spróbujesz uruchomić ng new
w strukturze folderów istniejącej aplikacji CLI, pojawi się ten piękny błąd:
Nie można użyć new
polecenia w projekcie Angular CLI.
Inne polecenia, które mogą być uruchamiane z globalnym zainstalować są ng help
, ng get/set
z --global
opcją, ng version
, ng doc
, i ng completion
.
Lokalna instalacja interfejsu CLI jest używana po skompilowaniu aplikacji. W ten sposób, gdy dostępne będą nowe wersje interfejsu CLI, możesz zaktualizować swoją instalację globalną i nie wpływać na instalację lokalną. Jest to dobre dla stabilności projektu. Większość ng
poleceń sens tylko z lokalnej wersji, jak lint
, build
i serve
, etc.
Zgodnie z plikiem Readme GitHub interfejsu CLI , aby zaktualizować interfejs CLI, należy zaktualizować pakiet globalny i lokalny. Korzystałem jednak z interfejsu CLI, w którym wersja globalna i lokalna różnią się do tej pory bez żadnych problemów. Jeśli kiedykolwiek napotkam błąd związany z brakiem synchronizacji globalnej i lokalnej wersji interfejsu CLI, opublikuję to tutaj.