Je travaille avec knockout.js 2.0 et quand je fais une boucle foreach imbriquée, la performance est extrêmement lente. La boucle principale a environ 70 enregistrements renvoyés et le tableau à l'intérieur de ces 70 enregistrements json contient entre 0 et 20 éléments. Donc, je pense que ce n'est pas beaucoup de données JSON.knockout.js avec boucle foreach imbriquée
Je teste juste avec le code ci-dessous:
<table>
<tbody data-bind="foreach: Employees, visible: Employees().length > 0">
<tr>
<td class="centerdata" data-bind="text: ID"></td>
<td class="centerdata" data-bind="text: Name"></td>
<td>
<table>
<tbody data-bind="foreach: $data.Transactions">
<tr>
<td data-bind="text:TransDate"></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
La page prend environ 20 secondes pour charger. Il y a d'autres champs dans le json, mais je les ai enlevés pour plus de simplicité.
Merci, Matt
Jetez un oeil à ce sujet: https://github.com/SteveSanderson/knockout/pull/272 et essayez de tester votre application avec la dernière version KO de github: https://github.com/SteveSanderson/knockout/tree/master/build/output. Vous devriez voir quelques améliorations décentes qui seront incluses dans KO 2.1. –
Nous avons essayé d'utiliser le dernier knock-out et aussi nommer les deux boucles foreach, mais la performance est toujours la même. – Matthew