如果我想这样做,我不确定回调函数应该是什么样子。这两个函数都在一个类中,我真的很想抽象它。
doesexist: function(setvalue) {
redisclient.sismember('setname', setvaue, callbackfuntion(value));
}
someothermethod: function() {
if (doesexist()){
// doSomething
}
}
我将如何在异步环境中做到这一点?
更新:
我现在尝试了这种方式(咖啡脚本):
deoesexist: (setvalue, cb) ->
@r.sismember 'setname', setvalue, (err, res) -> cb(res)
someothermethod: (setvalue) ->
@doesexist setvalue, (exists) =>
unless exists
# emit an event that calls a function
# that probably adds the not existing value.
# I just don't want to redo this. That's
# what this function is all about
它似乎工作得很好。