然后Coffeescript的Q.defer()回电话

时间:2016-10-13 16:50:17

标签: coffeescript promise q deferred

我见过

defereed.then (arg) =>
    function body

并且

deferred.then ( 
    (arg) =>
        function  body
)

有人可以解释一下这个区别吗?

这是https://github.com/gwomacks/php-debug/blob/master/lib/engines/dbgp/dbgp-instance.coffee

2 个答案:

答案 0 :(得分:1)

没有区别。括号在Coffeescript中是可选的:

  

如果要传递参数,则不需要使用括号来调用函数。隐式调用包装到行或块表达式的末尾。

console.log sys.inspect object → console.log(sys.inspect(object));

答案 1 :(得分:0)

这没有任何区别。下面的代码证明了这一点。

doubleValue = (value) ->
  deferred = q.defer()
  deferred.resolve value * 2
  deferred.promise

doubleValue(3).then (result) =>
  console.log  result

doubleValue(4).then ((result) =>
  console.log  result
)