Angular 6输入ngModel数组getter

时间:2018-06-15 09:48:03

标签: javascript typescript infinite-loop angular6 ngmodel

我正在努力做一些看似简单的事情。我有一个输入<input [(ngModel)]="inputText">的模板,它获取字符串数组变量 - private _inputText: string[] = [];。一切看起来不错,但是当我为这个变量做getter时它会崩溃。带有ngModel数组参数的输入开始循环。看看这个例子:

private _inputText: string[] = [];
public get inputText(): string[] {
    this._inputText = ['aa', 'bb'];
    return this._inputText;
}

导致getter调用和浏览器崩溃的无限循环的代码部分。我很难理解。此外,当这个吸气剂看起来像这样:

private _inputText: string[] = [];
public get inputText(): string[] {
    this._inputText[0] = 'aa';
    this._inputText[1] = 'bb'
    return this._inputText;
}

然后它工作正常。

有人可以解释一下它的运作方式吗?

有一个简单的stackblitz:https://stackblitz.com/edit/angular-ajnwrh

0 个答案:

没有答案