Il modello KnockoutJS di livello superiore che elenca il componente UI è simile al seguente
<!-- File: vendor/magento//module-ui/view/base/web/templates/collection.html -->
<each args="data: elems, as: 'element'">
<render if="hasTemplate()"/>
</each>
Questo è tradotto da Magento nel seguente codice Raw KnockoutJS.
<!-- ko foreach: {data: elems, as: 'element'} -->
<!-- ko if: hasTemplate() --><!-- ko template: getTemplate() --><!-- /ko --><!-- /ko -->
<!-- /ko -->
In entrambi i casi, questo modello si foreach
sovrapporrà alla elems
proprietà del modello di visualizzazione .
Se guardo il modulo RequireJS che (penso>) restituisce la classe di costruzione del modello di vista
vendor/magento/module-ui/view/base/web/js/lib/core/collection.js
Vedo che il insertChild
metodo sembra aggiungere alla elems
proprietà.
Ciò che è meno chiaro per me è: dove chiama Magento insertChild
per popolare il elems
e / o come viene elems
popolato con i modelli di vista che compongono una raccolta di componenti dell'interfaccia utente?