我想在ng-route中添加一个三元条件。请在下面找到:
vkEndCommandBuffer()
但不幸的是,如果我在网址中输入内容,那么它总是会转到'/ air'。
上面的代码有问题吗?
答案 0 :(得分:1)
您的表达式的设置方式始终为'/air/'
,无论$window.location.pathname
是什么。
我认为您可能打算这样做:
$window.location.pathname === '/flight/' || $window.location.pathname === '/air/' ? '/air' : '/hotel'
答案 1 :(得分:0)
问题是,表达式只被评估一次。
使redirectTo
成为一个函数,每次都调用它...
redirectTo: function(routeParams, currentPath) {
console.log('Otherwise rule matched for path', currentPath);
return /^\/(flight|air)\/?$/.test(currentPath) ? '/air' : '/hotel';
}