rating = 4;
for(i=0; i < rating ; i++){
//print statement
}
如何使用* ngFor
在角度为6的条件下复制相同的for循环循环应基于额定值运行。如果为2,则应运行2次。...
答案 0 :(得分:1)
我认为您正在寻找这种解决方案, 只需使用您的评分长度创建一个空数组
组件
if (comObject != null)
{
if (System.Runtime.InteropServices.Marshal.IsComObject(comObject))
{
System.Runtime.InteropServices.Marshal.ReleaseComObject(comObject);
}
comObject= null;
}
在类似模板中使用
let items = [];
for(i=0; i < rating ; i++){
items.push(i);
}
答案 1 :(得分:1)
我认为最好的解决方案是使用@pdudits这样的指令,例如in the link。为了改善我的建议
import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';
@Directive({
selector: '[repeat]'
})
export class RepeatDirective {
constructor(
private templateRef: TemplateRef<any>,
private viewContainer: ViewContainerRef) { }
@Input() set repeat(times: number) {
let count=this.viewContainer.length;
for (let i=this.viewContainer.length;i>times;i--)
this.viewContainer.remove(i-1);
for (let i = count ; i < times ; i++)
this.viewContainer.createEmbeddedView(this.templateRef,
{
$implicit:i
});
}
}
您可以用作
<div *repeat="40;let index">{{index}}</div>
请参见stackblitz
答案 2 :(得分:-1)
您的意思是像<div *ngFor="let item of items; let i = index">{{ i }}</div>