step.jsを使って非同期処理をわかりやすくしようとしたらはまった。
step(->
request
uri:uri
headers: headers
, this
, ->
console.log arguments
)上記だと二段目の関数の引数にrequestオブジェクトが渡される。
responseが取れなくて、なぜ〜?と悩んでいたが原因は以下だった。
・step.jsは値がreturnされるとそれを次の関数に渡す仕様
・coffeescriptは最後に評価された値を自動でreturnする
なのでreturnをrequestの後に追加すれば正しく動いた。
step(->
request
uri:uri
headers: headers
, this
return
, ->
console.log arguments
)これはちょっとださいがしょうが無いか。。