假设我有一条像“/:department”这样的路线,其中部门只能是书籍,音乐等。首先,如何在控制器/模板选择之前强制执行此约束 ,然后如果它无效,我如何测试它对表中的其他路线?否则,例如,/ about将无效。
选择我理解的相应控制器和模板的另外两个组件只是使用$ routeParams构建的返回路径的函数。
答案 0 :(得分:0)
为什么你不能这样做:
假设您的路线是这样的:
.when('get/:department, {
templateUrl: 'Your template url',
controller: 'controller'
});
在你的控制器中:
app.controller('controller', function ($location, $routeParams){
if($routeParams.department!=='books' || $routeParams.department!=='music' || .....) {
$location.path('invalid route');
} else {
// Your controller body
}
});