* ngFor指令在增加索引的同时迭代相同的参数

时间:2019-09-12 12:59:16

标签: angular

我在Angular中遇到问题。基本上我在循环* ngFor数组和索引。 当我进入特定条件时,我想在索引通常递增的同时对相同的参数进行两次迭代。

HTML

for i in start_dates: 
    date += dt.timedelta(days=1)
    print(date) 

# But it results in:

2019-09-12 14:50:10.326806
2019-09-13 14:50:10.326806
2019-09-14 14:50:10.326806

因此,基本上,在这种情况下,我要对相同的参数p2进行两次迭代。我该怎么办?

1 个答案:

答案 0 :(得分:2)

ngFor只是一个循环构造,如果您要转换要循环的数据,那么(开始)最好在开始循环进入模板之前这样做。这可以通过添加这样的属性并在其上循环来完成:

get transformedParams() {
    result = [];
    for (param of this.params) {
        result.push(param);
        if (param.isHidden) { 
            result.push(param)
        }
    }
    return result;
}

这样,索引将为params中的每个唯一项正常递增,但是由于params中的每个项都两次添加到transformedParams中,因此您将获得同一对象的两次迭代。这样一来,您就可以在模板中没有复杂逻辑的情况下完成自己想做的事情。