2017-05-24 9 views
0

私の現在の例では、毎回最初のテンプレートを使用していますが、入れ子状態のテンプレートは更新されません。複数のルートを同じUIビューにリンクするには

両方の角度成分がh1というテンプレートを持っているとすれば、それは非常に簡単です。

2ステート:

var people = { 
    name: 'people', 
    url: '/people', 
    component: 'people' 
} 

var person= { 
    name: 'people.person', 
    url: '/person', 
    component: 'person' 
} 

状態レジスタ:

states.forEach(state => $stateProvider.state(state)); 

内部の人々テンプレート:people.personインサイド

<h1>People</h1> 
<button ng-click="$ctrl.state.go('people.person')">Go to person</button> 

、私は戻ってリダイレクトしますngのクリックを公開しました人々に。

<h1>People.Person</h1> 
<button ng-click="$ctrl.state.go('people')">Go to People</button> 

コントローラはちょうど想像し、非常に単純です:

controller : function($state) { 
    this.state = $state; 
} 

はpeople.personテンプレートの仕事は、それが親から継承していないのはなぜ?

答えて

0

親コンポーネントと同じコンポーネントを指定する子ルートを持つことはできません。コンポーネントラインを人から削除すると、そのコンポーネントラインが機能するはずです。私は最近、これで焦げた。 1.0.3より前のui-routerで動作しました。

+0

しかし、彼らは同じコンポーネントではありません、人々と人ですか? –

+0

良い点。 :)あなたがナビゲートしている人を定義するコードはどこにありますか?また、ui-viewの外観を含むテンプレートはどうなっていますか?人の子であることと、入れ子にされていないか、または何かが重視されていないという問題があるのだろうか?また、どのバージョンのui-routerを使用していますか? –

+0

私は[email protected]を使用していますが、ドキュメント内であまり明確になっていないのは、子状態の内部にui-viewディレクティブをネストする必要があることです。私はこのポストメイトに答えを加えました! –

関連する問題