2014-02-25 6 views
4

Я пишу код CoffeeScript для API, а в разделе catching моего кода я разместил оператор IF. Теперь, во время процесса компиляции CoffeeScript говорит, что утверждение IF было неожиданным.Сборник CoffeeScript: Неожиданный IF

# Handle Errors 
app.error (err, req, res, next) -> 
    if err instanceof NotFound 
     res.send '404, not found.' 
    else 
     res.send '500, internal server error.' 

app.get '/*', (req, res) -> 
    throw new NotFound 

NotFound = (msg) -> 
    this.name = 'NotFound' 
    Error.call this, msg 
    Error.captureStackTrace this, arguments.callee 

Ошибка

/home/techno/node/snaprss/application.coffee:22:5: error: unexpected if 
    if err instanceOf NotFound 
    ^^ 

Кто-нибудь есть какие-либо идеи, где проблема находится в моем коде?

+0

Я исправил проблему с моими ошибками, используя другой метод для обработки ошибок. – TechnoCF

+0

@techo это, вероятно, ошибка отступа. – agconti

ответ

1

Остерегайтесь длительным условием отступа, например:

if condition and other_condition and 
yet_another_condition 
^^ 

должен быть

if condition and other_condition and 
    yet_another_condition 

Например Intellij нарушает эти отступы

+0

Я считаю, что это неверно ... по крайней мере, с самой последней версией CoffeeScript –

1

Другого дела следить за скобки и фигурные скобки:

Javascript

if (condition) { 
    //logic 
} 

должен быть CoffeeScript

if condition 
    # logic 
# END if 
Смежные вопросы