我有一个使用angular-ur-router的AngularJS SPA应用程序。当应用程序正常启动时,用户输入:
(a) www.example.com
然后自动调用index.html页面。在这个时候,我想这里的应用程序转到home
状态,但我不确定如何检测条件(a)。
当用户输入:
(b) www.example.com/access
(b) www.example.com/example
(b) www.example.com/something/else
然后找到路线并进入正确的状态
如何在应用程序启动时检查输入的路由是(a)还是类似(b),如果(a)然后重定向到home
状态
我已经知道我可以使用:$state.go('home');
更改为我想要的状态,但我不知道如何检测启动时是否指定了路由。
答案 0 :(得分:1)
您可以使用
<击> 撞击>
<击>$state.is("home.access");
击> <击> 撞击>
您需要修改状态配置:
myApp.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) {
// If no state is provided on page load, take me to /access or other state
$urlRouterProvider
.otherwise('/access');
// other state config
$stateProvider.state("home", {
url: '/' // this will be treated as the state when you page load at www.example.com
// add other properties
})
$stateProvider.state("home.access", {
url: "/access"
// just an example
})
}]);