在Angular 2 Immutable.js中迭代(使用* ngFor)

前端之家收集整理的这篇文章主要介绍了在Angular 2 Immutable.js中迭代(使用* ngFor)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Angular 2和Immutable JS,但我似乎无法在我的模板中使用简单的for循环.真的很令人沮丧.我尝试了以下旧语法(基于教程)

<div *ngFor='#filter of filterArray' class='filter-row'>
  <div class='row-title'>{{filter.get(title)}}</div>
</div>

和新的语法

<div *ngFor=' let filter of filterArray' class='filter-row'>
  <div class='row-title'>{{filter.get(title)}}</div>
</div>

我尝试使用和不使用.get语法为花括号内的不可变映射,我只是无法让它工作..

filterArray看起来像:

this.filterArray = fromJS([{
  title: 'Brand',},{
  title: 'Category'
},{
  title: 'Each UPC'
}]);

我需要使用一些特殊的语法才能使用吗?我的浏览器上没有显示任何内容,使用let语法时没有出现任何错误.

版本:

"@angular/common": "^2.1.0","@angular/compiler": "^2.1.0","@angular/core": "^2.1.0","@angular/forms": "^2.1.0","@angular/http": "^2.1.0","@angular/platform-browser": "^2.1.0","@angular/platform-browser-dynamic": "^2.1.0","@angular/router": "^3.0.1","immutable": "^3.8.1","typescript": "2.0.2"

编辑:以下工作,但它看起来很糟糕

<div *ngFor='let filter of filterArray let i=index' class='filter-row'>
    <div class='row-title'>{{filterArray.get(i).get('title')}}</div>
  </div>

解决方法

这对我有用:

<div *ngFor='let filter of filterArray' class='filter-row'>
    <div class='row-title'>{{filter.get('title')}}</div>  
</div>

猜你在找的Angularjs相关文章