Я пытаюсь сделать свойства объектов с помощью клавиш в angular2, используя ниже кода:* ngFor работает бесконечный цикл в angular2
<ul>
<li *ngFor="let element of componentModel | keys;let i=index">
{{element.key}}--{{element.value}} // 1---Bhushan...loaded only once
<span *ngIf="element">{{ loadProperty(i,element) }}</span>
</li>
</ul>
Но я столкнулся с проблемой здесь. Вывод в браузере загружается только один раз. , но вызов метода, т.е. loadProperty(i,element)
, работает в бесконечном цикле.
loadProperty(i:number,element:any){
console.log(element.key+'========'+element.value);
console.log(element);
}
означает на выходе браузера
(1 --- Бхушан)
отображается только один раз, но на консоли его работает бесконечно, как показано ниже:
Я хочу назвать этот метод только один раз за итерацию.
любые входы?
Я не уверен, как это сделать с привязкой к свойствам, у вас есть какой-либо plnkr для этого, где метод будет вызван только один раз на итерацию? @Gunter –
Что вы пытаетесь достичь? Похоже, http://stackoverflow.com/questions/36427670/angular2-calling-custom-function-after-ngswitch-new-view-is-created/36427769#36427769 –
почти такой же, но я также хочу передать итерированный элемент к методу. на самом деле эти элементы являются объектами, и я предоставляю редактор для каждого элемента на основе его типа, чтобы изменить его значение. то есть. если это объект, состоящий из массивов, тогда он будет загружать objectEditorComponent & внутри, что он будет загружать arrayEditorComponent для каждого массива. поэтому я использую * ngFor для итерации и передачи итерационного элемента для выбора правильного редактора на основе его типа данных. его рекурсивный процесс, пока он не получит последний элемент. –