Angular cli - jak wyłączyć automatyczne przeładowanie podczas serwowania

91

W jaki sposób mogę wyłączyć automatyczne przeładowanie podczas udostępniania mojej aplikacji za pomocą Angular CLI?

ng --helpwspomina o --live-reloadopcji, ale nie mogę jej zmusić.

ng serve --live-reload=falselub ng serve --live-reload falsenie działają

EDYCJA: wydaje się, że to błąd https://github.com/angular/angular-cli/issues/1755

maxbellec
źródło
my, biedni programiści systemu Windows, potrzebujemy tego, aby uniemożliwić indeksatorom wyszukiwania / programom antywirusowym wywoływanie trwałych odbudów ... Czy znalazłeś jakieś rozwiązanie?
Sam Jason Braddock
zgodnie z tym żądaniem pull powinno to zostać wkrótce naprawione
alex kucksdorf,

Odpowiedzi:

153

Po prostu zrób ng serve --live-reload falselubng serve --no-live-reload

Kiedyś to nie działało, ten PR to rozwiązał.

maxbellec
źródło
Czy mogę zatrzymać ponowne ładowanie niektórych określonych plików, tak jak chcę przestać ładować ponownie po zmianach w plikach css, czy to możliwe?
Pardeep Jain
3
dla mnie musiałem dodać znak równościng serve --live-reload=false
cup_of
nie pracuje dla mnie z --aot --prod. nie próbowałem innych ustawień, ale to nie działa.
Simon_Weaver,
2
dlaczego miałoby się rozwijać z --prodwłączonym trybem?
maxbellec
@maxbellec, ponieważ rozwój obejmuje testy od końca do końca. Mogę go używać w 2% przypadków, ale nadal chcę mieć możliwość przetestowania całej mojej konfiguracji produkcyjnej - i wszelkich niuansów kompilacji produkcyjnych. Ponieważ mogę teraz używać tunelu Argo przez Cloudflare (który buforuje) do odwrócenia serwera proxy do mojego komputera, mogę uzyskać całkiem niezły pomysł, jak szybko witryna będzie działać w połączeniu danych komórkowych bez konieczności posiadania prawdziwego środowiska przejściowego.
Simon_Weaver,
11

obsługuj swoją aplikację za pomocą tego polecenia:

ng serve --live-reload=false

jeśli chcesz uruchomić aplikację w trybie produkcyjnym , użyj następującego polecenia

ng serve --source-map=false --aot --prod --live-reload=false
s sharif
źródło
8

Myślę, że chcesz tylko wyłączyć opcję odbudowy przy zmianie

Spróbuj:

$ ng serve --watch=true|false
Pedro Lopez
źródło
1
--watchto jedno, --live-reloadto drugie. Nie sądzę, aby twoja odpowiedź naprawdę odnosiła się do OP.
BrunoJCM
0

Rozwiązaniem tego problemu jest uaktualnienie używanej wersji interfejsu wiersza polecenia. Interfejs CLI używa teraz pamięci do procesu kompilacji i nie zapisuje już na dysku. Pomaga to w przypadku problemu z programem antywirusowym / zapisem na dysku.

zmanc
źródło
to może naprawić problem od pierwszego komentarza, ale uważam, że nie rozwiązuje prawdziwego problemu, nadal (o ile mi wiadomo, ostatni raz sprawdzałem w dyskusjach na Githubie) nie ma możliwości --live-reloadpracy z CLI
maxbellec
wyłączanie przeładowywania na żywo wraca, ale wydaje mi się, że drugie pytanie brzmi: dlaczego jest to potrzebne? Nie widziałem przypadku użycia dla wyłączenia go.
zmanc
3
przede wszystkim denerwuje mnie, gdy edytuję szablon, potem wracam do przeglądarki i sprawdzam coś w narzędziach deweloperskich tylko po to, aby dowiedzieć się, że strona, nad którą pracuję, nie jest dostępna, ponieważ aplikacja jest zepsuta (została odświeżona przed zakończyłem edycję szablonu) i nie widzę już strony
maxbellec
widząc liczbę komentarzy w sprawie github, myślę, że nie tylko ja denerwuję się tym
maxbellec
Wciąż w to uderzam. Próbuję uruchomić ng serveprzez Cloudflare (mają nowy tunel o nazwie Argo Tunnel, który pozwala mi odwrócić proxy z mojej maszyny deweloperskiej). Chcę przetestować na odpowiednim https, na CDN bez odpowiedniej kompilacji. Czasami edytuję w czasie rzeczywistym, a inni wyświetlają podgląd witryny podczas spotkania i nie chcę, aby była ponownie ładowana, dopóki nie powiem im, aby wczytać ponownie.
Simon_Weaver,