J'ai un petit problème en utilisant findAll dans mon composant. Cela concerne la valeur qu'il renvoie à la fin.Ember - findAll et promesses
users: Ember.computed(function() {
return this.get('store').findAll('user');
}),
Dans mon cas, je veux obtenir le nom du premier objet. Donc dans mon guidon:
users.firstObject.name
'users' est une classe dans ce cas. Mais je suis en train de revenir directement le premier objet dans la propriété, comme celui-ci:
user: Ember.computed(function() {
return this.get('store').findAll('user')
.then(function(user){
return user.get('firstObject');
});
}),
Mais dans ce cas, dans mon guidon, user.name est non défini et l'utilisateur est une promesse. Il ya quelque chose que je ne peux pas comprendre avec des promesses, comment ils fonctionnent ... Quelqu'un peut-il m'aider à obtenir le bon utilisateur sans utiliser 'firstObject' sur mes utilisateurs? Merci d'avance!
Les composants sont configurés par défaut pour ne pas être conscients des données en dehors de ce qui est transmis, alors que cela peut être accompli avec une importation de magasin. Vous devriez avoir cette findAll dans un routeur et le renvoyer à un modèle. Vous pouvez ensuite transmettre ce modèle dans le composant. À partir de ce point, il est vraiment très simple de résoudre les enregistrements promis en utilisant toArray() alors vous pouvez obtenir le premier dans le tableau. 'this.get ('model'). toArray() [0]' – BrandonW