comment utiliser Promesse expresse dans node.js?
Je suis en utilisant la Promesse Expresse.
router.post('/Registration', function(req, res) {
var Promise = require('promise');
var errorsArr = [];
function username() {
console.log("agyaaa");
return new Promise(function(resolve, reject) {
User.findOne({ username: req.body.username }, function(err, user) {
if(err) {
reject(err)
} else {
console.log("yaha b agyaaa");
errorsArr.push({ msg: "Username already been taken." });
resolve(errorsArr);
}
});
});
}
var username = username();
console.log(errorsArr);
});
Lorsque je me connecte errorsArray
, il est vide et je ne sais pas pourquoi. Je suis nouveau dans node.js. Merci à l'avance.
username = username();
est sûrement pas ce que vous voulez.Oui, vous êtes réaccorder une Promesse. Nous aurons besoin de faire quelque chose comme
username.then(function(data){console.log(...)});
pouvez-vous s'il vous plaît ré-écrire ? Merci d'avance
que que dois-je faire ?
Comprenez-vous la notion de Promesse? Parce qu'il semble que d'abord vous aurez besoin de comprendre certains concepts derrière elle...
OriginalL'auteur hu7sy | 2016-01-27
Vous devez vous connecter pour publier un commentaire.
Essayez ce qui suit, et après, veuillez lire le document suivant https://www.promisejs.org/ de comprendre comment les promesses de travail.
Vous pouvez avoir d'autres erreurs aussi (ou des choses qui ne devrait pas être fait de cette façon). Je ne fais que vous montrer l'utilisation de base d'une Promesse.
Non, @stackdave, il n'a pas de Nœud v0.12 (!) - voir node.vert.
mais comment écrivez-vous vos données dans res après la promesse a résolu? Express est de retour res dès que la fonction se termine.
Je n'ai jamais utilisé Express, mais pour ce que je vois, il vous suffit d'utiliser la fonction suivante. Voir mon nouveau édité exemple.
les besoins de la lisibilité des améliorations
OriginalL'auteur anolsi
vous pouvez écrire un code propre de ce genre.
La promesse est une variable globale disponible, vous n'avez pas besoin de l'exiger.
OriginalL'auteur Gokul Thulaseedharan
Avant à l'aide de promesses, vous devez comprendre la nature asynchrone des fonctions et des rappels. Dans cet exemple, exprimer des appels de fonction(
req
,res
) lereq
objet provient d'une requête HTTP, et vous avez besoin de donner en retour des données par l'intermédiaire de lares
paramètre comme ceci:OriginalL'auteur n3ko