Angular - 将模板绑定到变量?

时间:2017-11-09 16:16:50

标签: angular

假设您有一个* ngFor循环,并且您希望将当前循环的值保存到typescript中的变量中。有没有办法做到这一点?

示例

<tr *ngFor="let item of items | async">
    <td>{{item.one}}</td>
    <td>{{item.two}}</td>         <-- I want to save this one away -->
    <td>{{item.three}}</td>
</tr>

打字稿

this.itemCollection = this.afs.collection(CollectionIntf);
this.items= this.itemCollection.valueChanges();

到目前为止,我一直在使用<iframe (load)=saveIntoVar(item.two)></iframe>。必须有更好的方法来实现这一点,因为这种iframe方法似乎并不总是有效。

1 个答案:

答案 0 :(得分:1)

在组件控制器中有一些从异步订阅中获取值的好方法。一种是只在控制器中订阅并分配变量。一种是在控制器中使用单独的订阅,但我最喜欢的是使用“do”运算符:

组件中的

this.items = this.itemCollection.valueChanges().do(items => console.log(items));

然后你可以产生你认为合适的副作用。