angular2和Typescript数组 - 类型'()=> void'上不存在属性'push'

Tam*_*mpa 2 typescript angular

我如何初始化一个空数组?

test: any[];

//On change I want to add an item to an array
test(){ 
  this.test.push('a');
}
Run Code Online (Sandbox Code Playgroud)

错误TS2339:类型'()=> void'上不存在属性'push'.

Thi*_*ier 13

你不初始化数组,所以testundefined.为了能够使用它,只需这样初始化:

test: any[] = [];
Run Code Online (Sandbox Code Playgroud)

  • 我有与IntelliJ警告相同的问题,但它可能只是一个IntellIJ错误.TypeScript编译器不会抱怨它. (3认同)