esta puede parecer una pregunta tonta, pero soy un novato en este tema. Estoy trabajando en promesas en el nodo js. Y quiero pasar un parámetro a una función de promesa. Sin embargo, no pude entenderlo.
someModule.someFunction.then(username, password,function(uid) {
/*stuff */
}
y la función es algo como
var someFunction = new Promise(username, password, function(resolve, reject) {
/*stuff using username, password*/
if ( /* everything turned out fine */ ) {
resolve("Stuff worked!");
} else {
reject(Error("It broke"));
}
});
javascript
node.js
promise
kundante
fuente
fuente
username
ypassword
en un alcance mayorRespuestas:
Envuelva su Promesa dentro de una función o comenzará a hacer su trabajo de inmediato. Además, puede pasar parámetros a la función:
Entonces, úsalo:
ES6:
Utilizar:
fuente
someModule
?uid
? ¿Es la cadena "¡Las cosas funcionaron!"?Otra forma ( debe intentarlo ):
fuente
then
es una devolución de llamada para manejar el valor de retorno de la función de rechazo . En lugar deresolve('Success!');
intentarreject('Error');
, obtendremos un error:Unhandled promise rejection
aquí vemos el resultado porquevar extraData = 'ImExtraData';
es una variable global y NO porque la pasamos usandothen
Aun mas corto
fuente
Puede usar .bind () para pasar el parámetro ( this ) a la función.
fuente
.then()
cuando lo invoco en un botón ` SaveImagesToFirebase = () => {const uid = firebase.auth (). currentUser.uid; // Proveedor const {imágenes} = this.state; images.map (image => {let file = image.uri; console.log (file); const path = "Img " + Math.floor (Math.random () * 1500); console.log ("@ IMAGE" , ruta); const ref = firebase .storage () .ref (provider/${uid}/ProviderGalary/${path}
); ref.put (archivo);}); }; `@gogog