2016-07-01 11 views
0

Wir brauchen ein erholsames Backend, das APIs für eine mobile App bereitstellt. Wir benötigen auch eine Admin-Website, um das erholsame Backend zu verwalten.Wie sollte ein Frontend-Framework (wie Vue/Angular) mit einem Backend-MVC-Framework (Laravel/Sails) interagieren?

Jetzt haben wir Sails.js als Backend-Framework, Vue.js als Frontend-Framework.

Ich bin ziemlich neu in MVC-Frameworks und ich bin ein wenig verwirrt, wie diese beiden Frameworks miteinander in Wechselwirkung treten:

Sollte:

  • Das Framework Frontend lebt indepedently (vielleicht auf ein separater Server), ruft es api vom Backend Rahmen ausgesetzt oder

  • Das Framework Frontend lebt in der Sails.js, für die Segel Rahmen als die "Ansichten" acting

Ich bin nicht einmal 100% sicher, ist meine Frage eine gültige Frage, ich möchte wissen, welche sind die populären Möglichkeiten und gibt es irgendwelche Vor- und Nachteile?

Antwort

0

Sie können beide, d. H. Frontend-Framework in Sails Projekt sowie separaten unabhängigen Projekt halten.

Ich habe beides getan und ich halte folgende Punkte beachten, während diese Entscheidung:

  1. Wenn das Projekt dann komplex genug ist, ist es besser, ein eigenes Projekt mit einigen Gerüsten Tool zu erstellen.
  2. Wenn sich das Projekt häufig ändert und eigenständig weiterentwickelt, ist es auch besser, ein separates Projekt zu erstellen.
  3. Wenn jemand Zeit/Kleinansicht dann gemacht werden soll würde ich es vorziehen, es zu halten Teil Sails Projekt

Da Sie Frontend Rahmen für die Admin-Panel verwenden, die ich denke komplex sein wird, würde ich Ich empfehle Ihnen, ein separates Projekt auf demselben Server zu erstellen.

Sie können yeoman für Gerüste verwenden. Ich habe es für einige eckige Projekte benutzt und es funktioniert großartig.

1

Ihre Frage ist zu breit für eine einzelne Erklärung, aber das Hauptkonzept ist nach meinem Verständnis Datenbindung.

Sie können eine Menge von free screencasts für den Start von Grund auf neu finden, vorausgesetzt, Sie kennen bereits einige JavaScript.