2016-03-01 110 views
0

我使用Riot的開發人員API創建了英雄聯盟網站。MEAN堆棧路由誤解

我知道如何設置路由和什麼不是,但我很困惑的事情,哪些網頁/ URL通過快速路由處理和哪些頁面/ URL由角​​處理?有人能幫我一個例子嗎?我已經在這幾個星期了,沒有運氣。 所以我會喜歡website.com/player/playerName將通過該玩家的名字搜索暴亂的開發者api,並拉起該頁面的統計數據。

感謝所有幫助我能

+0

有許多不同的MEAN腳手架項目,你可以安裝,通常與Yoeman,這將提供簡單的工作應用程序,你可以用它來參考 – charlietfl

+0

他們都可以。您可以選擇處理哪些。 – ryan0319

回答

0

Express將處理服務器端的路由,角將處理任何客戶端的路由。

服務器端路由使用服務器端編譯器生成網頁,網頁代碼然後發送到瀏覽器進行渲染。這種情況發生在服務器(快遞/節點)收到一個請求,這通常通過您的index.js(在路由DIR)或routes.js,你有一些代碼來路由請求:

app.get('/', function (req, res) { 
    res.send('root'); 
}); 

你可以在此處瞭解有關Express路由的更多信息:http://expressjs.com/en/guide/routing.html

客戶端路由使用Javascript更改已經呈現的代碼,該代碼現在已加載到瀏覽器中。因此,所有這些路由都發生在瀏覽器中。 Angular在其路由系統中使用了模板,因此您可以在用戶瀏覽時加載不同的模板,而無需強制瀏覽器加載新頁面。您角路由是在一個公共目錄中app.js,以及路由代碼看起來是這樣的:

angular.module('pathApp',[] ,function($routeProvider, $locationProvider){ 
    $routeProvider 
    .when('/Book/Delete', { 
    template: '<div class="box" ng-class="classname">Delete</div>', 
    controller: function($scope) {$scope.classname="delete"} 
    }) 
    .when('/Book/Show', { 
    template: '<div class="box" ng-class="classname">Show</div>', 
    controller: function($scope) {$scope.classname="show"} 
    }) 
    .otherwise({redirectTo: '/Book/Error'}); 
    $locationProvider.html5Mode(true);   
}); 

您可以瞭解更多有關角路由的位置: https://docs.angularjs.org/api/ngRoute/service/ $路線