我正在使用angularjs route来处理nginx配置文件。
就我而言,我有这些HTML:
index.html
description.html
dashboard.html
dashboard.html
是具有angularjs代码的那个。
这是我当前的nginx配置文件:
upstream panda.dev {
server 127.0.0.1:3333 max_fails=3 fail_timeout=30s;
}
server {
listen 80;
server_name panda.dev;
root /Users/Jeremy/Documents/Projects/PandaUnion/web/converted-html;
# serve static files directly
location / {
index index.html$args;
try_files $uri$args $uri$args/ $uri/ /dashboard.html$args =404;
}
}
这是我的角度代码:
PandaUnion.controller('PandaController', function($routeParams, $location) {
console.log($routeParams);
});
var templateURL = '/partials';
PandaUnion.config(function($routeProvider, $locationProvider) {
$locationProvider.html5Mode(true);
return $routeProvider.when('/dashboard/:user_id', {
templateUrl: templateURL + '/home.html'
}).when('/dashboard/:user_id/setting', {
templateUrl: templateURL + '/setting.html'
}).when('/dashboard/:user_id/bill', {
templateUrl: templateURL + '/bill.html'
});
});
使用此配置,我可以通过访问dashboard.html
获取/dashboard/123
,但我无法将123
作为routeParam获取角度。
我应该在访问{user_id: 123}
时打印/dashboard/123
,但我只看到一个空的对象。
这里出了什么问题?请帮忙......
(抱歉我的英语不好)
答案 0 :(得分:1)
看一下AngularJS tutorial。正如您在那里看到的那样,您必须通过$ routeParams对象绑定参数(在您的情况下为user_id)。
所以:
希望有所帮助。