将变量值传递给ionic2中的另一个组件

时间:2017-06-17 11:23:03

标签: ionic-framework

我正在尝试根据存储在另一个组件中的变量的值来显示离子组件,这些组件是按钮。

该变量名为 isPickupRequested ,一个存储在我的 home.ts

内的布尔值

我想在变量等于true时显示请求按钮,并在false时隐藏它。

Home.ts

. . .
export class HomePage {

  public isPickupRequested: boolean;

  constructor(public navCtrl: NavController, public platform: Platform, 
   private geolocation: Geolocation, public events: Events)  {
    platform.ready().then(() => {

      this.loadMap();
      this.isPickupRequested = false;
}
. . .

请求-button.html

<button [hidden]="!isPickupRequested" ion-button (tap)="ConfirmPickup()">Set pickup location</button>

请求按钮组件如何访问isPickupRequested变量?

1 个答案:

答案 0 :(得分:0)

要将组件的值传递给父组件,您需要使用events

所以从子页面做这样的事情:

import { EventEmitter, Output } from '@angular/core';


@Component({ 
  ...
})
export class ChildPage {
  @Output() pickupConfirmed = new EventEmitter();

  ...

  notifyPickupConfirmed() {
    this.pickupConfirmed.emit(pickUpId);
  }
}

然后在父页面中,您可以像使用其他任何内容一样捕获模板中的事件:

<request-button (pickupConfirmed)="onPickupConfirmed($event)">