coffeescript传递require()参数错误

时间:2015-11-01 19:28:06

标签: node.js express parameters coffeescript require

代码require ('./routes') app编译为require('./routes'(app));但我需要将其编译为require('./routes)(app)。我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

圆括号在CoffeeScript中有两个用途:

  1. 他们将表达式分组:(a + b) * c
  2. 他们习惯于调用函数:f(x)
  3. 当你这样说时:

    f (x)
    
    关于x周围括号的含义,有些含糊不清;他们是将括号括起来还是将括号括起来? CoffeeScript会选择前者,如您所见。

    如果您想(或需要)使用括号来调用函数,您可能不希望在左括号前有空格,您想要:

    f(x)
    

    在您的情况下,您需要:

    require('./routes') app
    

    甚至:

    require('./routes')(app)
    (require './routes') app