Chciałbym używać angular.js
do mojego narzędzia do edycji obrazu w mojej witrynie internetowej. Czy ja node.js
też potrzebuję ?
Nie rozumiem scenariusza. Jeśli tego nie potrzebuję, to kiedy używamy razem nodejs i angularjs?
javascript
node.js
angularjs
Manikandan Arunachalam
źródło
źródło
Odpowiedzi:
Nie potrzebujesz NodeJS do tworzenia narzędzia do edycji obrazów po stronie klienta.
AngularJS to struktura aplikacji internetowych, utrzymywana przez Google i społeczność, która pomaga w tworzeniu aplikacji jednostronicowych, które składają się z jednej strony HTML z CSS i JavaScript po stronie klienta.
Ale jeśli pewnego dnia będziesz chciał przesłać i przechowywać te obrazy na serwerze i udostępnić je wielu klientom - to tak, będziesz również potrzebować serwera. Ten serwer można utworzyć za pomocą NodeJS.
źródło
MEAN
lubSailsJS
.Czuję twój ból.
Dla kogoś nowego w tworzeniu Angular 2 czuję ból związany z koniecznością uczenia się technologii po stronie serwera w celu uzyskania czegoś, co zasadniczo jest technologią po stronie klienta . Z tego co rozumiem:
node.js
służy tylko do zarządzania zależnościami aplikacji kątowej 2. Jeśli w jakiś sposób uda ci się uzyskać te zależności bez użycianode.js
,npm
lubjspm
możesz uruchomić i rozwijać swoją aplikację w trybie offline. Jednak zrobienie tego ręcznie zajmie nieubłaganą ilość czasu, ponieważ musisz ręcznie pobierać pliki, które mogą mieć inne zależności, które będą wymagać ponownego pobrania innych plików (tak, byłem tam).node.js
lubnpm
czyjspm
o to chodzi automatyzuje ten proces, a także podejmuje wszelkie niezbędne kroki konfiguracji plików (jspm
) tak, że gdy używasz szczególną zależność w swoim wniosku, że szczególną zależnością jest inna zależność będzie również obecny w systemie.node.js
jest również potrzebny dohot-module-reload
szybkiego tworzenia aplikacji, ponieważ umożliwiafile watcher api
wykrywanie zmian w kodzie źródłowym.Ale jest sposób na stworzenie aplikacji Angular 2 offline bez node.js.
file-access-restriction
problemu możesz załadować swój projekt jako rozszerzenie. Rozszerzenia mają możliwość korzystania ze wszystkich dostępnych technologii HTML 5, a także niektórych potężnych interfejsów API (niedostępnych nawet dla aplikacji obsługiwanych na serwerze), będąc jednocześnie lokalnymi dla środowiska programistycznego. Nie musisz więc uruchamiać serwera WWW, aby uzyskać dostęp do technologii HTML 5, jeśli udostępniasz aplikację jako rozszerzenie.hot-module-reload
możliwości, możesz podejść do tego z innej strony. Zamiast mieć na serwerze WWW funkcję obserwatora plików do monitorowania zmian w plikach w systemie lokalnym, możesz to zrobić z poziomu samej aplikacji. Ponieważ aplikacja możefetch
lubxmlhttprequest
zasoby wymagane przez aplikację, możesz okresowofetch
lubxmlhttprequest
zasoby potrzebne aplikacji i porównać je z jakąś pamięcią podręczną. Ale skąd wiesz, które pliki sprawdzić? Możesz szukać nalinks
stroniescript
, zimg.
Jeśli używasz SystemJS jako modułu ładującego, możesz użyć jego rejestru do wyszukania plików potrzebnych twojej aplikacji, ale nie załadowanych na stronę, ponieważ została transponowana lub coś w tym rodzaju. Chociaż wykonanie tego wszystkiego może obniżyć wydajność systemu wraz z dodatkowym narzutem związanym z transpilacją lub wstępnym przetwarzaniem kodu innego niż natywny, to zadanie można zlecić na zewnątrz,web worker
co zwolni główny wątek wykonywania w systemie dla kodu aplikacji.Nie wierzysz mi? Oto dowód.
hot-module-reload
funkcjonalność, podłączając się do prymitywów hmr opracowanych przez Alexisa Vincenta dla SystemJS.hot-module-reload
Funkcjonalność jest włączona przez pojedynczy plik JavaScript tak, że jeśli funkcja ta nie jest konieczna lub jest podejmowanie zbyt dużo zasobów, a następnie można po prostu usunąć wiersz obrażając kodu.Ale uważaj.
hot-module-reload
możliwość jest obecnie hackerskim sposobem zaimplementowania monitora plików, który używa wspólnych konwencji dla projektu (temp1.ts, temp1.css, temp1.htm), ponieważ nie ma sposobu (mogę się mylić), aby uzyskać ostateczną listę wszystkich zasobów potrzebnych aplikacji, ale nie załadowanych na stronę główną (przetransponowane lub wstępnie przetworzone zasoby).źródło
node.js jest używany do pisania Javascript po stronie serwera. angular.js to framework po stronie klienta.
Nie potrzebujesz node.js do korzystania z angular.js, ale możesz zainstalować npm (menedżera pakietów węzłów), aby użyć niesamowitych narzędzi, które znacznie ułatwią ci życie jako angular developer. Na przykład: yoeman, który jest świetnym narzędziem do budowy rusztowań. Na npm dostępnych jest wiele innych narzędzi tutaj jest link do ich strony Dowiedz się więcej o angular na oficjalnej stronie angular lub na kanale angular youtube
źródło
npm
jest menedżerem pakietów. Instalowanie pakietu za pomocą programunpm
jest tym samym, co kopiowanie pakietu i jego zależności do katalogu lokalnego. Więc jeśli chcesz mieć fajne funkcje, które są dostarczanenpm
, powinieneś zainstalowaćnpm
i potrzebujesz do tego węzła. Jeśli nie potrzebujesz funkcji programunpm
, nie musisz go instalować i możesz samodzielnie skopiować pakiety. Powiedzmy, że Twoja witryna musi korzystać z tego selektora dat, jeśli uruchomisz komentarz instalacyjny, który go skopiuje i angularjs w dół, lub możesz to zrobić ręcznie.Numer
Angular
jest używany po stronie klienta iNode
po stronie serwera.Zwykle pasują do siebie jako stos ŚREDNI, ale nie jest to konieczne.
źródło
Nie potrzebujesz Node.JS do działania AngularJS. NodeJS jest po stronie serwera, AngularJS po stronie klienta.
Jeśli jesteś nowy w AngularJS, polecam ten samouczek poradnik AngularJS . W samouczku będziesz używać NodeJS, zrozumiesz, dlaczego te dwa elementy współpracują ze sobą, ale nie są konieczne.
źródło
Trudno odpowiedzieć, nie wiedząc, jak działa narzędzie do edycji obrazów. Ale aby odpowiedzieć na twoje pytanie, nie potrzebujesz Node.js do korzystania z AngularJS.
Angular to front-endowy framework javascript, który działa w przeglądarce internetowej klienta.
Węzeł to usługa, która może wykonywać javascript i jest często używana na serwerze, być może zamiast PHP ( jak w stosie MEAN ). Ponadto, ponieważ Node jest usługą, która może wykonywać javascript, może być używana na komputerze lokalnym podczas tworzenia aplikacji Angular do wykonywania zadań w tle, takich jak minifikacja css i javascript oraz wykonywanie testów.
Jeśli więc narzędzie do edycji obrazów zostało opracowane w języku javascript, a aplikacja korzysta z Angular i Node (jako serwera internetowego), kod może zostać wykonany po stronie klienta lub po stronie serwera.
Przeczytaj o stosie MEAN, aby zobaczyć, gdzie pasują Node i Angular. W ogóle nie potrzebujesz Node, ale fajnie jest tworzyć wszystko w tym samym języku.
źródło
Powód instalacji NodeJ Ponieważ przeglądarka internetowa, taka jak Chrome, Firefox itp., Rozumie tylko JavaScript, musimy przetransponować nasz Typescript do JavaScript. Dlatego transpiler Typescript wymaga Node.js do generowania kodu Typescript do JavaScript.
źródło