我是angularjs的新手。你能解释一下我之间的区别吗? .state('init.home')和.state('/ home')
谢谢Inadvance。
答案 0 :(得分:1)
我相信你指的是ui-router,在这种情况下,这就是区别:
.state('init.home')将是您可以使用<a ui-sref="init.home">Click me</a>
在HTML模板中引用的内容,它会将用户转换为该状态。
那状态看起来像这样:
.state('init.home', {
url: "/home",
templateUrl: "views/home.html",
controller: "HomeController"
})
通常你也会将.state('init')作为父语句,例如:
.state('init', {
abstract: true,
resolve: {
authenticated: ['$auth', function($auth) {
if (!$auth.isAuthenticated()) {
$state.go('login');
}
}
})
这将确保在'init'下向子状态的任何转换都可以访问'authenticated'以确保用户已登录,例如。
.state('/ home')实际上并不有效。您可以改为定义状态并使用'url'参数指定位置:
.state('home', {
url: '/home'
}
此页面可能是一个很好的资源审核:https://github.com/angular-ui/ui-router/wiki/URL-Routing
答案 1 :(得分:0)