URL 即使在状态更改后也没有更改。 `ui-路由器`

URL is not changing even after the state is changed . `ui-router`

我正在使用 ui-router 和状态提供商来路由我的应用程序中的页面。我有以下用状态提供者编写的状态。

.state('home', {
        url: '/home',
        templateUrl: 'public/msStream/stateFiles/stateHome.html',
        controller: 'stateHomeController'
    })

.state('home.profile', {
        url: '/home/profile',
        templateUrl: 'public/msStream/views/setting/ProfileBody.html'
      })

当我处于home状态时。 /home 添加到我的 URL 中,但是当我使用 $state.go("home.profile) 切换到 home.profile 状态时,我的 URL 没有更改为 /home/profile 而是 HTML 在相同状态的 templateurl 中添加的页面正在前面呈现。

我尝试在状态的 URL 中添加 /profile/home/profile 但似乎没有任何效果。我在这里错过了什么?

我创造了working plunker here

paren-child 州继承了很多东西。除此之外,还有 url。所以我们不应该为 child 使用来自 parent.

的 url 部分
$stateProvider
  .state('home', {
    url: '/home',
    templateUrl: 'public/msStream/stateFiles/stateHome.html',
    controller: 'stateHomeController'
  })
  .state('home.profile', {
    // HERE
    // instead of this
    // url: '/home/profile',
    // we need this
    url: '/profile',
    templateUrl: 'public/msStream/views/setting/ProfileBody.html'
  })

同样非常重要的注意事项 - parent 必须包含 anchor/target/ui-view 因为它的 child:

public/msStream/stateFiles/stateHome.html

<div>
  <h2>this is the home</h2>

  placeholder for child:
  <hr />

  <div ui-view=""></div>
</div>

这里最重要的是 <div ui-view=""></div> - child 视图(未命名)

的占位符

实际查看 here