我正在使用Riot的Developer API创建一个英雄联盟网站。
我知道如何设置路由和什么不是,但我对某些事情感到困惑,哪些页面/网址由快速路由处理,哪些页面/网址由角度处理?有人可以帮我举个例子吗?我已经在这几个星期了,没有运气。 所以我会喜欢website.com/player/playerName将通过该玩家名称搜索riot的开发者api并提取该页面的统计数据。
感谢我能得到的任何帮助
答案 0 :(得分:0)
Express将处理服务器端路由,Angular将处理任何客户端路由。
服务器端路由使用服务器端编译器生成网页,然后将网页代码发送到浏览器进行渲染。当服务器(Express / Node)收到请求时会发生这种情况,这通常会通过您的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/ $路线