类中的函数不会触发

时间:2017-12-27 02:00:08

标签: angular function typescript ecmascript-6

我正在尝试使用不同的方法来实现Typescript类,并且我很难弄清楚如何使我的函数正常工作。

到目前为止,这就是我所拥有的:

calc-func.ts:

export function calcFunc( a: number, b: number ){ return a*b; }

callc-class:

import { calcFunc } from './calc-func';

export class CalcClass implements calcFunc {
  NumA: number = null;
  NumB: number = null;
  NumC: number = calcFunc( this.NumA, this.NumB );
}

app.component:

export class App implements OnInit {

    Calculation: CalcClass = new CalcClass();

    ngOnInit(){
      this.Calculation.NumA = 3;
      this.Calculation.NumB = 7;
   }
}

app.component(模板):

 <h2>number = {{Calculation| json}}</h2>

NumC显示为0而不是21,即使NumA显示为3并且&#39; NumB&#39;显示为7,因为我正在瞄准。

我需要做些什么来使这项工作?

1 个答案:

答案 0 :(得分:2)

变量NumC在创建CalcClass对象时初始化,之后不会更新。如果您希望NumC每次访问时都calcFunc,则应将其定义为属性:

get NumC(): number {
    return calcFunc(this.NumA, this.NumB);
}