Convertir promesse d'objet JSON
J'ai un problème de conversion de la promesse renvoyées par le service du contrôleur. Ce que je veux, c'est créer un tableau d'objets JSON à partir des données contenues dans la promesse. Voici ce que je reçois dans le contrôleur:
Ici est la ligne qui est utilisé pour l'impression des données:
console.log("controller unmatched: ", unmatched.getData(sFilter));
Ici "inégalée" est le service, et getData() est la fonction.
Merci!
Êtes-vous demander comment obtenir les données à partir d'une réponse? En supposant que vous êtes à la résolution de la réponse de
$http
sans modification, il serait juste Service.someRequest(params).then(function(response) { $scope.data = response.data; }, function(err) { /* do something with err */ });
OriginalL'auteur VitezKoja | 2017-06-02
Vous devez vous connecter pour publier un commentaire.
Une Promesse représente une valeur qui sera disponible peu de temps dans l'avenir, ou jamais. Cela signifie que sa valeur ne peut pas être retourné par votre
unmatched.getData()
fonction.Ce que vous devez faire est de faire
unmatched.getData()
retour de la réelle promesse et ensuite de prendre des mesures quand cette promesse décide:avec esnext que vous pouvez faire:
const data = await unmatched.getData(sFilter);
Toute variable déclarée à l'extérieur de la portée. En tant que propriété
$scope
accomplit ce. La chose importante à garder à l'esprit est que toute action qui dépend de cette variable doit être prise lorsque la promesse est résolu, pas avant.Oui, à condition que la fonction a été déclarée comme
async
OriginalL'auteur Lennholm
Promesses de travail asynchrone:
Qu'avez-vous à dire? Je voulais seulement connecter le résultat, en expliquant comment gérer
Promise
les valeurs de retour... c'était juste un exemple, vous pouvez faire ce que vous voulez avec les données renvoyées.OriginalL'auteur Hitmands
Je crois vraiment ce que vous voulez faire est de sauvegarder une valeur de la promesse décide de, pas la promesse elle-même.
Cela est dû à la nature de promesses - ils sont asynchrones.
Source: Les promesses sur MDN
OriginalL'auteur Vladimir Zdenek
si vous voulez obtenir les objets JSON à partir de la promesse, je pense que vous pouvez utiliser au-dessous de la ligne de code
OriginalL'auteur Harikrishnan S