为什么* ngFor重复多于数组中的元素

时间:2017-08-30 11:11:15

标签: angular ngfor

为什么 * ngFor 重复(数组计数)x 4 次?

我使用Angular-cli创建了简单的Angular2项目。我正在使用Angular4。

AppComponent(app.component.ts)

import { Component } from '@angular/core';

@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
    styleUrls: ['./app.component.css']
})
export class AppComponent {
    values = [1, 2, 3, 4, 5];

    protected square(v) {
        const retVal = v * v;
        console.log(retVal, new Date().getMilliseconds());
        return retVal;
    }
}

app.component.html

<div *ngFor="let v of values">
    <span>{{square(v)}}</span>
</div>

结果(呈现的HTML)

enter image description here

问题

在HTML中,它只生成 5个元素,但是当您查看控制台时,它会打印 20次

我认为应该只在 5 时调用 square(v),而不是 20 次。

0 个答案:

没有答案