Ich möchte angular.js
für mein Bildbearbeitungswerkzeug auf meiner Website verwenden. Brauche ich node.js
auch
Ich verstehe das Szenario nicht. Wenn ich es nicht brauche, wann verwenden wir dann beide Nodejs und Angularjs zusammen?
javascript
node.js
angularjs
Manikandan Arunachalam
quelle
quelle
Antworten:
Sie benötigen NodeJS nicht, um ein clientseitiges Bildbearbeitungswerkzeug zu erstellen.
AngularJS ist ein Webanwendungsframework, das von Google und der Community verwaltet wird und das beim Erstellen von Anwendungen mit nur einer Seite hilft, die auf der Clientseite aus einer HTML-Seite mit CSS und JavaScript bestehen.
Wenn Sie diese Bilder jedoch eines Tages hochladen, auf einem Server speichern und für mehrere Clients zugänglich machen möchten, benötigen Sie auch einen Server. Dieser Server könnte mit NodeJS erstellt werden.
quelle
MEAN
oder verwendenSailsJS
.Ich fühle deinen Schmerz.
Für jemanden, der neu in der Angular 2-Entwicklung ist, kann ich den Schmerz spüren, serverseitige Technologien für etwas lernen zu müssen, das im Wesentlichen eine clientseitige Technologie ist . Von dem, was ich verstehe:
node.js
wird nur zum Verwalten der Abhängigkeiten einer Angular 2-Anwendung verwendet. Wenn Sie es irgendwie schaffen, diese Abhängigkeiten ohne Verwendung zu erhaltennode.js
,npm
oder wenn Siejspm
Ihre Anwendung offline ausführen und entwickeln können. Das manuelle Ausführen dauert jedoch unaufhaltsam, da Sie Dateien manuell herunterladen müssen, die möglicherweise andere Abhängigkeiten aufweisen, für die andere Dateien erneut heruntergeladen werden müssen (ja, ich war dort).node.js
odernpm
oderjspm
für diesen Fall wird dieser Prozess automatisiert und alle erforderlichen Schritte zum Konfigurieren der Dateien (jspm
) ausgeführt, sodass bei jeder Verwendung einer bestimmten Abhängigkeit in Ihrer Anwendung auch die andere Abhängigkeit dieser bestimmten Abhängigkeit in Ihrem System vorhanden ist.node.js
wird auch für diehot-module-reload
Fähigkeit zur schnellen Anwendungsentwicklung benötigt, da damitfile watcher api
Änderungen am Quellcode erkannt werden können.Es gibt jedoch eine Möglichkeit, die Angular 2-Anwendung offline ohne node.js zu entwickeln.
file-access-restriction
Problem können Sie Ihr Projekt als Erweiterung laden. Erweiterungen können alle verfügbaren HTML 5-Technologien sowie einige leistungsstarke APIs (nicht einmal für Anwendungen verfügbar, die auf einem Server bereitgestellt werden) verwenden und sind gleichzeitig lokal für Ihre Entwicklungsumgebung. Sie müssen also keinen Webserver starten, um auf HTML 5-Technologien zuzugreifen, wenn Sie Ihre Anwendung als Erweiterung bereitstellen.hot-module-reload
Fähigkeit können Sie es von der anderen Seite nähern. Anstatt einen Datei-Watcher auf dem Webserver zu haben, um Änderungen an Dateien im lokalen System zu überwachen, können Sie dies über die Anwendung selbst tun. Da die Anwendungfetch
oderxmlhttprequest
Ressourcen, die von der Anwendung benötigt werden, könnenfetch
oder können Siexmlhttprequest
die Ressourcen, die Ihre Anwendung benötigt , regelmäßig oder mit einem Cache vergleichen. Aber woher wissen Sie, welche Dateien überprüft werden müssen? Sie können suchenlinks
innerhalb der Seite,script
vonimg.
Wenn Sie SystemJS als Modullader verwenden, können Sie mithilfe der Registrierung nach den Dateien suchen, die von Ihrer Anwendung benötigt, aber nicht auf der Seite geladen werden, da sie transpiliert wurde oder so. Dies alles kann einen Leistungsverlust für Ihr Systemweb worker
bedeuten , zusammen mit dem zusätzlichen Aufwand für das Transpilieren oder Vorverarbeiten von nicht nativem Code. Dieser Job kann jedoch an einen ausgelagert werden, der den Hauptausführungsthread im System für Ihren Anwendungscode freigibt.Glaubst du mir nicht? Hier ist der Beweis.
hot-module-reload
Funktionalität, indem sie sich in die von alexis vincent für SystemJS entwickelten hmr-Grundelemente einfügt. Diehot-module-reload
Funktionalität wird durch eine einzelne Javascript-Datei aktiviert. Wenn diese Funktionalität nicht benötigt wird oder zu viele Ressourcen beansprucht, können Sie einfach die fehlerhafte Codezeile entfernen.Aber seien Sie gewarnt.
hot-module-reload
Funktion ist derzeit eine hackige Methode zum Implementieren eines Datei-Watchers, der allgemeine Konventionen für ein Projekt verwendet (temp1.ts, temp1.css, temp1.htm), da es keine Möglichkeit gibt (ich könnte mich darin irren), eine endgültige Liste zu erhalten aller Ressourcen, die von der Anwendung benötigt, aber nicht auf der Hauptseite geladen werden (die transpilierten oder vorverarbeiteten Ressourcen).quelle
node.js wird verwendet, um Javascript auf der Serverseite zu schreiben. angular.js ist ein clientseitiges Framework.
Sie benötigen node.js nicht, um angle.js zu verwenden, aber Sie können npm (Node Package Manager) installieren, um einige großartige Tools zu verwenden, die Ihnen das Leben als Angular-Entwickler erheblich erleichtern. Zum Beispiel: Yoeman , ein großartiges Gerüstwerkzeug. Es gibt viele andere Tools, die auf npm verfügbar sind. Hier ist ein Link zu ihrer Website. Weitere Informationen zu Angular finden Sie auf der offiziellen Angular-Website oder auf dem Angular- Youtube-Kanal
quelle
npm
ist ein Paketmanager. Das Installieren eines Pakets mit entsprichtnpm
dem Kopieren des Pakets und seiner Abhängigkeiten in Ihr lokales Verzeichnis. Wenn Sie also die netten Funktionen haben möchten, die mitgeliefert werden,npm
sollten Sie sie installierennpm
und benötigen dafür einen Knoten. Wenn Sie die Funktionen von nicht benötigen, müssennpm
Sie sie nicht installieren und können Pakete selbst kopieren. Nehmen wir an, Ihre Site muss diese Datumsauswahl verwenden, wenn Sie einen Installationskommentar ausführen, der sie kopiert und eckig nach unten zeigt, oder Sie können dies manuell tun.Nr.
Angular
Wird auf der Client-Seite undNode
auf der Server-Seite verwendet.Sie gehören zusammen als MEAN Stack, sind aber nicht erforderlich.
quelle
Sie benötigen Node.JS nicht, damit AngularJS funktioniert. NodeJS ist serverseitig, AngularJS ist clientseitig.
Wenn Sie AngularJS noch nicht kennen, würde ich dieses Tutorial AngularJS empfehlen . Im Tutorial werden Sie NodeJS verwenden, Sie werden verstehen, warum die beiden zusammenarbeiten, aber nicht notwendig sind.
quelle
Es ist schwer zu beantworten, ohne zu wissen, wie Ihr Imaging-Bearbeitungstool funktioniert. Aber um Ihre Frage zu beantworten, nein, Sie brauchen Node.js nicht, um AngularJS zu verwenden.
Angular ist ein Front-End-Javascript-Framework, das im Webbrowser des Clients ausgeführt wird.
Node ist ein Dienst, der Javascript ausführen kann und häufig auf einem Server verwendet wird, möglicherweise als Ersatz für PHP ( wie im MEAN-Stack ). Da Node ein Dienst ist, der Javascript ausführen kann, kann er auf Ihrem lokalen Computer bei der Entwicklung von Angular-Anwendungen verwendet werden, um Hintergrundaufgaben wie das Minimieren von CSS und Javascript und das Durchführen von Tests auszuführen.
Wenn Ihr Imaging-Bearbeitungstool in Javascript entwickelt wurde und Ihre Anwendung Angular und Node (als Webserver) verwendet, kann der Code entweder clientseitig oder serverseitig ausgeführt werden.
Lesen Sie den MEAN-Stack, um zu sehen, wo Node und Angular zusammenpassen. Sie brauchen Node überhaupt nicht, aber es ist schön, alle in derselben Sprache zu entwickeln.
quelle
Grund für die Installation von NodeJs Da ein Webbrowser wie Chrome, Firefox usw. nur JavaScript versteht, müssen wir unser Typoskript in JavaScript umwandeln. Daher benötigt der Typescript-Transpiler Node.js zum Generieren des Typescript-Codes in JavaScript.
quelle