Express.js czy angular do obsługi tras w średniej aplikacji?

Jestem zupełnie nowy we wszystkim Nodejs / express/angular, i właśnie natknąłem się na pytanie, które mnie niepokoi.

Gdy masz średni stos, wydaje się, że trasy mogą być obsługiwane zarówno przez Express.js, jak i Angular.

Kątowe :

Na przykład, jeśli zdefiniuję trasę w Angular, mogę to zrobić tak:

var app = angular.module("app", []).config(function($routeProvider) {
    $routeProvider.when('/login', {
        templateUrl: '/templates/login.html',
        controller: 'LoginController'
    });

    $routeProvider.when('/front', {
        templateUrl: '/templates/front.html',
        controller: 'FrontController'
    });


    $routeProvider.otherwise({redirectTo: '/front'})
});

Ale z ekspresem.js i do :

app.get('/',function(req,res){
    res.sendfile('templates/angular.html');
});

Więc moje pytanie brzmi :

Kiedy używasz trasowania kątowego, a kiedy używasz express / align = "left" /

(mogę przegapić coś bardzo oczywistego tutaj, ale mam nadzieję, że możesz to wskazać)

Author: Lars Holdgaard, 2014-07-20

1 answers

Te dwa służą różnym celom na jednej stronie aplikacji.

Aplikacja zrobi wszystkie CRUD (punkty końcowe, w których tworzysz/czytasz/aktualizujesz / usuwasz swoje rzeczy, na przykład: projekty, użytkownicy, rachunki itp.). Również to zrobić wszystkie rzeczy uwierzytelniania (jak /login i /register).

Wszystko to wymaga tras, ponieważ chciałbyś coś takiego /api/users, aby złapać wszystkich użytkowników. Wszystkie te trasy, czyli trasy CRUD i trasy uwierzytelniania, trafiają do express.js routera. Dlaczego tam? Ponieważ są to trasy zaplecza.

Z drugiej strony, masz swoją aplikację kątową, która zawiera wizualną część aplikacji i tam chcesz jakieś trasy. Chcesz /, aby wskazać swój dom, chcesz /users mieć stronę, na której lista użytkowników lub nawet /users/add mieć stronę z formularzem do dodawania nowych użytkowników.

Możesz to zobaczyć w ten sposób:

Backend routes (express): są to trasy, o których użytkownik końcowy nie będzie musiał wiedzieć ani nawet z nich korzystać (twój angular aplikacja użyje ich do komunikacji z backendem do pracy z jego danymi, ale użytkownik końcowy nie umieści ich bezpośrednio w przeglądarce)).

Frontend routes (angular ones): są to trasy, które mapuje do różnych stron aplikacji i dlatego użytkownicy końcowi mogą korzystać z nich, aby uzyskać bezpośredni dostęp do niektórych części aplikacji.

 45
Author: Jesus Rodriguez,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-20 18:11:52