2011-08-03 10 views
5

私はnowjsとnode_redisを使用しています。私は非常にシンプルなものを作成しようとしています。しかし、これまでのところ、チュートリアルではconsole.log()のみを実行するため空白のままになっていました。client.get()の値は、実際の値の代わりに「true」です

私のクライアント側で
//REDIS 
var redis = require("redis"), 
    client = redis.createClient(); 

client.on("error", function (err) { 
    console.log("Error "+ err); 
}); 

client.set("card", "apple"); 

everyone.now.signalShowRedisCard = function() { 
    nowjs.getGroup(this.now.room).now.receiveShowRedisCard(client.get("card").toString()); 
} 

now.receiveShowRedisCard = function(card_id) { 
    alert("redis card: "+card_id); 
} 

警告のみ「true」に出ています - 私は「りんご」であるキー「カード」の値を取得するために期待していました。

アイデア?

答えて

7

同期方法で非同期ライブラリを使用しようとしています。これは正しい方法です:

//REDIS 
var redis = require("redis"), 
    client = redis.createClient(); 

client.on("error", function (err) { 
    console.log("Error "+ err); 
}); 

client.set("card", "apple", function(err) { 
    if (err) throw err; 
}); 

everyone.now.signalShowRedisCard = function() { 
    var self = this; 
    client.get("card", function (err, res) { 
     nowjs.getGroup(self.now.room).now.receiveShowRedisCard(res); 
    }); 
} 
関連する問題