2016-09-13 6 views
0

私はクイックスタートを基にした最初の角型アプリケーションとそれに続くhero tutorialを持っています。Angular2明確化

だから私のapp.componentは、ルーティングを処理し、app.component.htmlは単純です:

<router-outlet></router-outlet>

私はアプリにナビゲーションバーを追加したいです。私はコンポーネントを作った。私のような私のapp.componentにナビゲーションバーを追加する必要があります

<nav id="myNavbar" class="navbar navbar-default navbar-inverse navbar-fixed-top" role="navigation"> 
<!-- Brand and toggle get grouped for better mobile display --> 
<div class="container"> 
    <div class="navbar-header"> 
     <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbarCollapse"> 
      <span class="sr-only">Toggle navigation</span> 
      <span class="icon-bar"></span> 
      <span class="icon-bar"></span> 
      <span class="icon-bar"></span> 
     </button> 
     <h3 class="nav-title"><a href="stores">Title</a></h3> 
    </div> 
    <!-- Collect the nav links, forms, and other content for toggling --> 
    <div class="navbar-collapse collapse" id="navbarCollapse"> 
     <ul class="nav navbar-nav navbar-right"> 
      <li id="storesNavLink" class="" ><a href="stores">All Stores</a></li> 
       <my-cart></my-cart> 
     </ul> 
    </div> 
</div> 

<my-navbar></my-navbar> 
<router-outlet></router-outlet> ? 

これは、ナビゲーションバーは、すべてのビューであることを保証しますが、それはコンテンツを覆い隠しnavbar.component.htmlは次のようになります私の他のコンポーネントから。

また、navbarにカートがあります(<my-cart></my-cart>)。

カートは、作成してnavbarに入れたコンポーネントです。

カートがnavbarにあり、navbarがapp.componentにある場合は、products.componentからカートにアイテムを追加するにはどうすればよいですか?

誰がこの場合、子供ですか、誰が親ですか?

このチュートリアルは役に立ちましたが、親子関係に直接関係しないコンポーネント間の通信には何も見つかりませんでした。

私はそれがサービスと関係があると推測しています。

答えて

0

この構文は正しいと思います。

ナビゲーションバーがすべてのビューにある場合は、このようなコンポーネントを配置する必要があります。 カートに商品を追加する心配はありません。角度2の入力と出力(エミッタ)プロパティで行うことができます。 https://angular.io/docs/ts/latest/cookbook/component-communication.html

+0

ありがとうございます。私はその情報を探していました。私は料理本の下を見ることは決してなかったでしょう。それで、なぜNavbarは他のコンポーネントのコンテンツを隠しているのですか?私はそれを押し下げるべきだと思っていますが、それはちょうど上にあります。 – MayNotBe

+0

申し訳ありませんが私はあなたを取得します。 –