我正在使用routesegment提供程序进行角度路由。如何使用$ location.path()进行网址调用。
代码如下:
FinancialGameApp.config(['$routeSegmentProvider', '$routeProvider', function ($routeSegmentProvider, $routeProvider) {
// Configuring provider options
$routeSegmentProvider.options.autoLoadTemplates = true;
// Setting routes. This consists of two parts:
// 1. `when` is similar to vanilla $route `when` but takes segment name instead of params hash
// 2. traversing through segment tree to set it up
$routeSegmentProvider
.when('/Home', 's1')
.when('/Login', 's2')
.when('/Signup', 's3')
.when('/UserDetails', 's4')
.segment('s1', {
templateUrl: 'Views/home.html',
controller: 'loginController'
})
.segment('s2', {
templateUrl: 'Views/login.html',
controller: 'loginController'
})
.segment('s3', {
templateUrl: 'Views/signup.html',
controller: 'loginController'
})
.segment('s4', {
templateUrl: 'Views/UserDetailsPage.html',
controller: 'userDetailsController'
})
$routeProvider.otherwise({ redirectTo: '/Home' });
}]);
我想使用$ location.path()
通过方法调用调用段s4 authService.login($scope.loginData).then(function (response) {
$location.path('/UserDetails');
}
答案 0 :(得分:0)
通过在网址前添加#来尝试。
authService.login($scope.loginData).then(function (response) {
$location.path('/#/UserDetails');
}
此外,您可以将段名称与getSegmentUrl
一起使用以获取哈希值而不是直接网址
authService.login($scope.loginData).then(function (response) {
$location.path($routeSegment.getSegmentUrl('s4'));
}