2016-04-02 11 views
0

テンプレートを持たない親状態でui-routerを使用しようとしています。私はこれを見つけましたtopic州ではテンプレートが必要です。空の文字列テンプレートで親状態を使用するとui-routerの問題が発生する

$stateProvider 
      .state("customer", { 
       abstract: true, 
       url: "/customer", 
       template: '' 
      }) 
      .state("application", { 
       url: "/application", 
       template: "<application>", 
       parent: "customer" 
      }) 
      .state("company", { 
       url: "/company", 
       template: "<company>", 
       parent: "customer" 
      }) 

とhtmlで:だから今、私のルータの設定は次のようになりますこのコードを実行する

<ul> 
<li> 
<a ui-sref="application" href="#/customer/application">APPLICATION</a> 
</li> 
<li> 
<a ui-sref="company" href="#/customer/company">COMPANY</a> 
</li> 
</ul> 

にはエラーを表示しませんが、ページのアプリケーションと会社がコンテンツを表示されていません。前もって感謝します。

+0

最初の場所で、この親状態を有するのポイントは何ですか? –

+0

私はアコーデオンのサイドバーを持っており、その構造に基づいてパン粉を作りたいと思っています。 accordeonにはメニュー(ul)のみを開く親(ボタン)があるので、私はui-router設定に基づいてaccordeonとbreadcrumbを両方とも構築することが大丈夫だと思った。しかし、それ以外のアイデアは評価されています – magneto

+0

私は理解していませんが、それはまだparenbt状態が何であるかを説明していません。 –

答えて

0

私は、ui-view指令を親状態のテンプレートとして提供する必要があると思います。 ui-srefはあなたのためにあなたのhtmlからhrefを取り除くことができます。全体で

$stateProvider 
      .state("customer", { 
       abstract: true, 
       url: "/customer", 
       template: '<div ui-view></div>' 
      }) 
      .state("customer.application", { 
       url: "/application", 
       template: "<application></application>" 
      }) 
      .state("customer.company", { 
       url: "/company", 
       template: "<company></company>" 
      }) 

そして、あなたは、HTML:

<ul> 
    <li> 
     <a ui-sref="customer.application">APPLICATION</a> 
    </li> 
    <li> 
     <a ui-sref="customer.company">COMPANY</a> 
    </li> 
</ul> 
+0

ありがとう、私はui-viewディレクティブを親テンプレートに入れるのを忘れていました! – magneto

関連する問題