Quelle est la bonne façon de trouver un élément dans Ember.js ? ArrayController
? J'ai un jeu de contacts dans le contrôleur :
App.contactsController = Em.ArrayController.create({
content:[],
});
Il y a des objets dans le contrôleur, ils sont affichés et tout fonctionne bien. Ensuite, je veux implémenter un routeur avec sérialisation/désérialisation :
...
deserialize:function (router, params) {
var contact = App.contactsController.find(function(item) {
return item.id == params.contact_id;
});
},
...
Cependant, la fonction find ne semble pas effectuer d'itération. Quelle pourrait en être la raison ? Est-il possible que le routeur tente d'effectuer le routage avant que l'application n'appelle sa fonction de recherche ? ready
méthode ? C'est là que je remplis le contrôleur avec des données.
EDIT : Eh bien, j'ai constaté que le routeur essaie d'effectuer la transition avant que je remplisse mon arrayController avec les données (en Ember.Application.ready
méthode). Est-il possible de "retarder" le routage après que les données aient été correctement définies ?