Bonjour,
Je voudrais récupérer la variable users en dehors des fonction :
voilà ce que j'ai essayé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 client.lrange("comptes", 0, -1, function(err, replies) { replies.forEach(function(reply, i) { users = JSON.parse(reply.toString()); }); }); // ici je voudrai récupérer la variable users pour les fonction plus bas console.log(users); // = undefined function findById(id, fn) { var idx = id - 1; if (users[idx]) { fn(null, users[idx]); } else { fn(new Error('User ' + id + ' does not exist')); } } function findByUsername(username, fn) { for (var i = 0, len = users.length; i < len; i++) { var user = users[i]; if (user.username === username) { return fn(null, user); } } return fn(null, null); }
mais ça ne va pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 var users; function Tusers(users) { console.log(users); // affiche le bon résultat } client.lrange("comptes", 0, -1, function(err, replies) { replies.forEach(function(reply, i) { users = JSON.parse(reply.toString()); Tusers(users); }); }); // ici je voudrai récupérer la variable users pour les fonction plus bas console.log(users); // = undefined function findById(id, fn) { var idx = id - 1; if (users[idx]) { fn(null, users[idx]); } else { fn(new Error('User ' + id + ' does not exist')); } } function findByUsername(username, fn) { for (var i = 0, len = users.length; i < len; i++) { var user = users[i]; if (user.username === username) { return fn(null, user); } } return fn(null, null); }
je pense que je doit utilisé le module Q où async, mais après avoir parcouru la doc, j'ai du mal à comprendre comment mettre ça en place :/
si quelqu'un à une idée, merci d'avance.
Partager