создать анонимную функцию с необязательным аргументом в Coffeescript - PullRequest
1 голос
/ 07 октября 2011

Я новичок в Coffeescript, и у меня возникают проблемы с включением этого Javascript:

Handlebars.registerHelper("debug", function(optionalValue) {
  console.log("Current Context");
  console.log("====================");
  console.log(this);

  if (optionalValue) {
    console.log("Value");
    console.log("====================");
    console.log(optionalValue);
  }
});

В рабочий Coffeescript. Я думаю, что часть, на которой я зациклен, состоит в том, как передать аргумент «debug» в функцию registerHelper, а также передать анонимную функцию, которая принимает необязательный аргумент.

Этот синтаксис:

Handlebars.registerHelper: "debug", -> (optionalValue)
  console.log("Current Context")
  console.log("====================")
  console.log(this)

  if optionalValue
    console.log("Value")
    console.log("====================")

не работает для меня.

1 Ответ

5 голосов
/ 07 октября 2011

У вас есть параметр и -> обратный.
Вам также не нужна точка с запятой, так как вы вызываете функцию registerHelper.

Handlebars.registerHelper "debug", (optionalValue) -> 
 console.log("Current Context")
 console.log("====================")
 console.log(this)

 if optionalValue
  console.log("Value")
  console.log("====================")
  console.log(optionalValue)

, которая компилируется из coffeescript в javascriptкак:

Handlebars.registerHelper("debug", function(optionalValue) {
  console.log("Current Context");
  console.log("====================");
  console.log(this);
  if (optionalValue) {
    console.log("Value");
    console.log("====================");
    return console.log(optionalValue);
  }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...