Pytanie Jak monitorować połączone moduły za pomocą Nodemon?


Zajmuję się tworzeniem modułu w Node.js, który mam npm-linked do innego projektu node_modules folderu. Chciałbym zrestartować ten inny serwer projektów po zmianie pliku w moim module. Nodemon domyślnie ignoruje node_modules, ale założyłem, że mogę to zmienić za pomocą nodemon --watch node_modules / my_module - ale nie może go uruchomić. Jeśli tymczasowo usunę moduł node_modules z Nodemons lib / config / defaults.js, to działa, co prawdopodobnie potwierdza, że ​​problem ma związek z nadpisaniem domyślnego zachowania.


15
2018-05-04 12:21


pochodzenie


Wpadłem na to sam. Myślałem o używaniu pliku forever.js, ale wygląda na to, że biblioteka faktycznie nie obsługuje wysyłania danych wyjściowych dziennika do stdout (co jest moim zdaniem najlepszym rozwiązaniem). - jedd.ahyoung
... aaa i znalazłem rozwiązanie. Przypuszczam, że powinienem był to wcześniej wypróbować. - jedd.ahyoung


Odpowiedzi:


Za pomocą nodemon 1.2.1, jestem w stanie wykonać następujące czynności, aby zegarki działały z łączem npm:

$ nodemon --watch . --watch $(realpath node_modules/my_module)

Zasadniczo ... musisz obejrzeć katalog, w którym się znajdujesz (katalog twojego projektu), a następnie określić zegarek do samego dowiązania symbolicznego. nodemon domyślnie ignoruje node_modules, więc jednoznaczne określenie zegarka to naprawia. Możesz spróbować zaktualizować swoją wersję nodemon jeśli to nie działa dla ciebie.


2
2017-07-30 02:10



To nie wydaje się już działać, zobacz ten przypadek; - Tamlyn
@Tamlyn Hej - możesz edytować moją odpowiedź, dodając nową poprawkę, jeśli istnieje. Jeśli jest to dobra odpowiedź, mogę utworzyć tę wiki społeczności i zostawić ją otwartą na edycje. - jedd.ahyoung
To zadziałało właśnie teraz, kiedy uciekłem brew install coreutils (System operacyjny Mac). Inaczej realpath polecenie nie zostało znalezione. To dobry pomysł, aby uciec realpath node_modules/my_module osobno, aby zapewnić, że zwróci coś znaczącego i tylko wtedy zadzwoń nodemon .... - Alexander Kachkaev