Angular 2相当于Ember.Computed('Prop1','Prop2'......'prop n')

时间:2016-07-25 14:49:02

标签: angular rxjs angular2-changedetection

我正在尝试将我的Ember应用程序移植到Angular 2, 但是我没有看到我怎么能创造   Computed Properties--Properties observing other properties for changes and the reacting
在Angular 2中。

[(myVar)] &&  onMyVarChange= new EventMitter();

观察自身和反​​应的变化。

任何帮助/指示都会很棒。

更新:

使用@Nazim的回答解决了这个问题 使用的打字稿属性

TS(compoment.ts)

  private _isValid: boolean;
  public get isValid(): boolean {
    return this._isValid;
  }
  public set isValid(v: boolean) {
    this._isValid = v;
  }
  // A read only property
  private _show: boolean;
  public get show(): boolean {
    return this._isValid;
  }  

模板(component.html)

 <h2 *ngIf="show">Show Me</h2>

1 个答案:

答案 0 :(得分:1)

根据我的理解,Angular 2使用本机ES2015计算属性。对于前者你可以定义一个Person Component:

export class PersonComponent {
  firstName: string;
  lastName: string;

  get fullName() {
    return `${this.firstName} ${this.lastName}`;
 }
} 

然后使用ngModel将fullName的值绑定到模板元素。