から値を返す方法IのCoffeeScriptで以下の機能を持っている:@ client.methodCallはXMLRPCライブラリを参照非同期呼び出し
newEdge: (fromVertexID, toVertexID) ->
edgeID = this.NOID
@client.methodCall('ubigraph.new_edge', [fromVertexID, toVertexID], (error, value) ->
if(error)
console.log('ubigraph.new_edge error: ' + error)
edgeID = value
)
edgeID
。 私の質問は、edgeIDとして値を返す方法です。コールバックを使用していますか?
もしそうなら、コールバックは次のようになりますか?
# callback is passed the following parameters:
# 1. error - an error, if one occurs
# 2. edgeID - the value of the returned edge id
newEdge: (fromVertexID, toVertexID, callback) ->
@client.methodCall('ubigraph.new_edge', [fromVertexID, toVertexID], (error, value) ->
if(error)
console.log('ubigraph.new_edge error: ' + error)
edgeID = value
callback(error, value)
)
でも1つのコールバック、のユーザーと関数はそれぞれの場合に何をすべきかを決めることができますが、基本的にはあなたの答えです:コールバックがそれを行う方法です。私が探していたものでした。ありがとう – lowerkey
@lowerkey:十分にはっきりしているが、別々のコールバックが普通のアプローチだと思われる。 jQueryは、少なくとも成功とエラーのために別々のコールバックを使用するため、ほとんどの人にはよく知られています。私はこれを明確にする(試した)。 –
ほとんどのnode.jsライブラリはエラーを最初のパラメータとして持つ単一のコールバックを使用しています。これにより、すべてのユーザーがすべてシームレスに対話できます。私は別のコールバックを介してその方法をお勧めします。 –