无法访问对象:找不到类型为'string'的不同支持对象'hello'。 NgFor仅支持绑定到诸如Arrays之类的Iterables

时间:2017-07-01 12:04:02

标签: arrays angular typescript

我正在尝试在angular2中循环一个数组,但是我收到以下错误:

  

无法找到'string'类型的不同支持对象'hello'。 NgFor   仅支持绑定到Iterables,例如Arrays。

只有从组件访问数组时才会发生这种情况。

我在组件中的代码如下所示:

export class StringTestComponent implements OnInit {
  strings: string[];
  currentString: string;

  constructor() { }

  ngOnInit() {
    this.strings = ['hello', 'hey'];
    this.changeCurrentString(0);
  }

  changeCurrentString(id: number): void {
    this.currentString = this.strings[id];
  }
}

以下html发生错误(我更改了此示例的对象名称):

<div class="wrapper">
  <div *ngFor="let string of strings; let i=index" 
       (click)="changeCurrentString(i)" 
       [ngClass]="strings[i] === currentString ? 'active' : ''">
     {{string}}
  </div>
</div>

只要我不致电changeCurrentString,一切顺利。那么它与访问我假设的对象有关吗?

希望有人可以提供帮助!

0 个答案:

没有答案