2016-08-02 8 views
16

Ich bin PHP-Entwickler und habe angefangen Angular2 zu lernen. Aber ich weiß nicht, wie man es mit PHP benutzt. Ist es möglich, Angular nur als Frontend zu verwenden? Was muss ich tun? Wie verwendet man es auf Shared Hosting ohne Node.js installiert?Wie kann ich Angular 2 in PHP-Anwendung verwenden?

+1

Angular Js funktioniert auf Client-Seite, die im Browser ausgeführt wird und ruft APIs auf (ob sie in PHP, Knoten oder einer anderen serverseitigen Sprache sind). Die Philosophie der eckigen 2-Anwendung besteht darin, Frontend-Funktionalität mit Back-End-API zu trennen. – noor

+0

Angular.js ist nur ein JavaScript-Framework für Frontends, es ist nicht erforderlich, dass node.js auf einem anderen Framework funktioniert. Angular js ist ein unabhängiges Framework, das mit jeder beliebigen Backend-Sprache funktioniert. Sie müssen nur den JSON mit einer ruhigen API ausgeben und die Details innerhalb des eckigen Frameworks verwenden. –

+0

@noor, wenn ich eine Testkomponente in Typoskript für angular2 schreibe, wie man eine HTML-Seite rendert ?? Bitte füge ein Beispiel hinzu. – mgh

Antwort

54

Meine 2 Cent als lange PHP-Entwickler der schon ziemlich oft mit Angular2 gespielt hat.

Als PHP-Entwickler erwarten Sie, dass PHP eine HTML-Seite rendert und an den Client sendet. Sie werden das nicht mit Angular2 tun. All diese Verarbeitung, die in PHP stattfinden würde, Erstellen von Datentabellen, Listen oder was auch immer, ist nun Angulars Aufgabe.

Das einzige, was Sie jetzt mit PHP machen, ist einfach JSON-Antworten zu senden. Andere haben das schon oben gesagt.

Ich gehe davon aus, dass Sie wenig Erfahrung mit Angular2 haben, da Sie dies fragen. Also hier ist der Deal:

Erfahren Sie, wie Sie Knoten und NPM auf Ihrem lokalen Rechner verwenden. Erfahren Sie, wie Sie mit NPM Ihr leeres Angular2-Projekt einrichten. Spiele und entwickle auf deinem lokalen Rechner.

Wenn Sie bereit sind, Daten zu laden, kann PHP einbezogen werden, indem JSON-Daten an das Frontend gesendet werden, damit Angular verwendet werden kann.

Wenn Sie bereit sind, Ihre Angular2-App für die Welt online zu stellen, haben Sie eine Reihe von Build-Optionen. Sie müssen Ihren Code von Typescript in Javascript kompilieren.

Ich habe das Angular CLI-Tool verwendet. Dadurch kann ich einfach "ng build" ausführen und die App wird kompiliert.

Dann kann ich den Ordner, den es erzeugt, auf meinen Apache-Server hochladen und es funktioniert. Die Angular CLI erstellt einen Ordner namens "dist", der all die Dinge enthält, die Ihr Frontend benötigt.

Stück Kuchen.

+0

Vielen Dank für Ihre Antwort. Ich bin ein langjähriger PHP-Entwickler, dem kürzlich gesagt wurde, dass ich alles, was ich gemacht habe, zu Angular 2 konvertieren muss. Ich bin nicht glücklich darüber, aber es ist ein Job. Anders als bei den Tutorials zu [Angular] (https://angular.io/), half mir deine Antwort, die Beziehung zwischen PHP und Angular nur ein bisschen mehr zu verstehen. – Cagey215

3

soweit ich weiß AngularJS ist Client-Seite Javascript-Framework. Also im Allgemeinen gibt es keine Notwendigkeit für "nodejs". Sie benötigen nur die AngularJS-Bibliotheksdateien, die in Ihrem HTML enthalten sind und von Ihrem PHP-Code erzeugt werden.

Ich denke, Sie sollten zuerst AngularJS genauer betrachten.

+0

Klarstellung: AngularJS (1.X-Verzweigung) und Angular2 weiter sind nicht dasselbe. Mit Angular2 haben Sie kein Skript-Tag mehr. Ihre gesamte Benutzeroberfläche verlässt sich auf alles. – sitesbyjoe

5

Vorzugsweise wird Ihre Website nur eine einfache index.html und eine Datei namens app.js herunterladen, die alle Ihre JS und damit Ihre Angular App enthält.

PHP wird auf einem Server sitzen, der die Aufgabe einer API erfüllt, die mit JSON/XML antwortet, um sie anzufordern, die eckige App wird dann das JSON verwenden, um die Webschnittstelle zu erstellen.

können Sie haben PHP irgendwo gehostet und Ihre Winkel App von einem anderen Ort dienen, auch dachte, es wegen der Latenz

nicht empfohlen wird

<html> 
 
    <script src="app.js"> 
 
</html>

+0

Sollte ich angular app.js exportieren? – mgh

+0

Was meinen Sie mit dem Export? Wenn Sie eine eckige App erstellen, werden Sie am Ende Ihren gesamten JS-Code in eine Datei bündeln, die normalerweise app.js – Borjante

+0

ist. Es ist meine Frage! Ich habe eine eckige js App, wie geht das? – mgh

0

über [sitesbyjoe] beste Antwort ist genial. Nur Details Schritte,

offen cmd

1) cd your-Projektordner

2) ng bauen

3) kopieren dist Ordner Apache/htdocs/[dist/oder your- Projektname]

4) Important: open the index.html file, find <base href="/"> 
change it to <base href="/your-project-name/"> 
Without doing this, js file will not be load correctly. 

5) http://localhost:80/your-project-name/index.html

Es funktioniert.

Verwandte Themen