从组件到主组件angular2的调用方法

时间:2017-06-09 19:05:11

标签: html function angular navbar

我的问题是我有一个组件,其功能我希望我的app.component.html有权访问

book.component.html

<div class="form-inline">
        <input id="inputSearchBar" class="form-control mr-sm-2" type="text" placeholder="Search" [(ngModel)]="Text">
        <button class="btn btn-outline-info my-2 my-sm-0" type="submit" (click)="onSearch()">Search</button>
    </div>

现在这个目前正在运行,因为我在book.component.html上有这行代码,我想要的是在导航栏内的app.component.html上使用它

app.component.html

<header>
  <nav class="navbar navbar-toggleable-md navbar-inverse bg-inverse">
    <button class="navbar-toggler navbar-toggler-right" type="button" 
    data-toggle="collapse" 
    aria-controls="navbarColor01"
    aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
    <a class="navbar-brand" href="#">Navbar</a>
    <div class="collapse navbar-collapse" id="navbarColor01" >
      <ul class="navbar-nav mr-auto">
        <li class="nav-item active">
          <a class="nav-link" href="#" [routerLink]="['']">Home <span class="sr-only">(current)</span></a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#" [routerLink]="['about']">About</a>
        </li>
          <li class="nav-item">
          <a class="nav-link" href="#" [routerLink]="['books']">Books</a>
        </li>
         <li class="nav-item">
          <a class="nav-link" href="#" >Register</a>
        </li>
          <li class="nav-item">
          <a class="nav-link" href="#" [routerLink]="['login']">Login</a>
        </li>
      </ul>

    </div>
  </nav>
</header>

我希望将搜索框作为我的导航栏的一部分,并且它可以正常运行,我应该在我的组件上添加什么,或者我该怎么做才能使其工作。

2 个答案:

答案 0 :(得分:0)

您可以在此处使用父子关系。为搜索栏创建组件并添加父组件。

1) 像这样创建搜索组件

@Component({
  selector: 'search-component',
})
export class searchcomponent  { }

2)添加父HTML

app.component.html

<header>
<search-component>  </search-component>
</header>

更多信息请查看此链接https://angular.io/docs/ts/latest/cookbook/component-communication.html

答案 1 :(得分:0)