首页 > 解决方案 > 如何在Angular 2+的属性/属性绑定中放置一个变量?

问题描述

我正在尝试从 Angular Material 动态构建一些日期选择器。

Angular Material 中给出的示例代码是这样的:

<input [matDatepicker] = "myDatepicker">
<mat-datepicker-toggle [for] = "myDatepicker"></mat-datepicker-toggle>
<mat-datepicker #myDatepicker></mat-datepicker>

现在我的问题是我想将整个代码块包装在一个中*ngFor并让它重复多次。因此,不是#myDatepicker我将其命名为循环的索引在#myDatepicker{{i}}哪里。我现在的问题是如何将该索引放入零件中?i*ngFori[for] = "myDatepicker"

我试过[for] = "myDatepicker{{i}}"了,它给出了一个错误:

模板解析错误:解析器错误:得到插值({{}}),其中表达式是预期的。

我也尝试过for = "myDatepicker{{i}}",但这似乎也不起作用,即使没有错误。

标签: angularangular-material

解决方案


目前,对此没有直接支持,只有一些解决方法。社区已请求此功能 - https://github.com/angular/angular/issues/33233,您可以在其他成员关于 Stack Overflow 的问题中找到一些解决方案 - ngFor 中的动态模板引用变量(Angular 2)

这两个链接都提供了一些解决方案,但实际上我认为这是一个缺失的功能。


推荐阅读