www redisio nodejs node help node.js get redis synchronous

node.js - redisio - nodo redis get() sincrónico ayúdame



redis instructions (1)

, notEnterUsers: function(){ var users; this.store.get("users",function(err,result){ var result = JSON.parse(result); users = result.filter(function(element, index, arr){ return (element.status === 0); }); }); console.log(users); return users; }

¿Cómo resolver este problema user = undefinded ?

regla 1 ....

debe ser objeto de devolución de usuarios


Con Node.js, se supone que debes usar el estilo de paso de continuación (CPS). Este ejemplo no puede funcionar porque la devolución de llamada dada como parámetro get no se ha ejecutado aún cuando se ejecuta "console.log (users)".

La función notEnterUsers debe tener un parámetro de devolución de llamada y llamarlo una vez que se haya completado la variable de usuario. Algo como:

, notEnterUsers: function(callback){ var users; this.store.get("users",function(err,result){ var result = JSON.parse(result); users = result.filter(function(element, index, arr){ return (element.status === 0); }); callback(users); }); }

Node.js es fundamentalmente asincrónico, y tus scripts deberían intentar abarcarlo en lugar de intentar imitar un comportamiento sincrónico.