2016-10-09 9 views
0

に入る空白のページが、これは私のソリューションです:私は2つのレイアウト(サイドバーのない1、2つのサイドバーと1)との作品に自分のアプリケーションを設定しようとしているアプリ

$stateProvider 
      .state('main', { 
       url: "/", 
       abstract:true, 
       templateUrl: "/layouts/main.html" 
      }) 
      .state('sidebars', { 
       url: "/", 
       abstract:true, 
       templateUrl: "/layouts/two-sidebar.html" 
      }) 
      .state('home', { 
       parent:'main', 
       templateUrl: "/partials/home.html" 
      }) 
      .state('about', { 
       url: "about", 
       parent:'sidebars', 
       templateUrl: "/partials/about.html" 
      }) 

main.htmlを

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

2-sidebar.html

<div class="container-fluid"> 
    <div class="row"> 
     <div class="col-md-2">leftcontent</div> 
     <div class="col-md-8"> 
      <div ui-view class="view"></div> 
     </div> 
     <div class="col-md-2">rightcontent</div> 
    </div> 
</div> 

私はより良い解決策があると確信しているが、これですべてが正常に動作します。 唯一の問題は、私がhomeをクリックしたときに初めて空白のページが表示されたときにルートページ/#/にアクセスしたときですが、URLは同じですがうまくいきます。 http://plnkr.co/edit/Q4cZM69hn0lutYEYjmxH?p=preview

EDIT

あなたは、外部のウィンドウでそれを開く必要があり、問題(プレビューウィンドウで青色のボタン)を見るために、ここでplunker、より明確にするために、それがメインのように見えます問題は、あなたが同じURL( /)に結合された二つの状態を定義している行方不明 URL

.state('home', { 
       url:"", 
       parent:'main', 
       templateUrl: "/partials/home.html" 
      }) 
+0

あなたは子供の状態として何をしたいですか?あなたの意図がここにあるのは本当に明確ではありません。提案したドキュメントのネスト状態のセクションを読む – charlietfl

答えて

0

ました。

UIルーターの設計によれば、1つの状態だけがURLにバインドされる必要があります。

URLがそうのような小道具だあなたはは、同じURLを持つ2つの状態を持つ第二1に子状態を作り、それはそれで何もないようにしたい場合:このような

.state('main', { 
      url: "/", 
      abstract:true, 
      templateUrl: "/layouts/main.html" 
     }) 
     .state('main.sidebars', { 
      url: "", 
      templateUrl: "/layouts/two-sidebar.html" 
     }) 
+0

解決策のように見えるものを編集しました。私のアプリケーションが 'url:/' 'を指す2つの状態で動作する理由は不明です。 – alfredopacino

0

変更して、

.state('main', { 
      url: "/", 
      abstract:true, 
      templateUrl: "/layouts/main.html" 
     }) 
.state('sidebars', { 
      url: "/something", 
      abstract:true, 
      templateUrl: "/layouts/two-sidebar.html" 
     }) 
+0

私はプランナーを更新しましたが、これは解決しないことがわかります。 – alfredopacino

関連する問題