Выявление шаблона модуля с аргументами в coffeescript - PullRequest
3 голосов
/ 01 марта 2012

Мне любопытно, если у кого-то есть предпочтения в следующих двух способах представления аргументов в шаблоне модуля «Выявление»:

Приложение 1:

DocReview.DocumentsApp = (
    ((DocReview, Backbone) ->
        console.log("body")
    )(window.DocReview, window.Backbone)) 

Который компилируется в

 DocReview.DocumentsApp = (function(DocReview, Backbone) {
    return console.log("body");
  })(window.DocReview, window.Backbone);

Приложение 2:

DocReview.DocumentsApp = do(DocReview = window.DocReview, Backbone = window.Backbone) ->
    console.log("body")

Который компилируется в

  DocReview.DocumentsApp = (function(DocReview, Backbone) {
    if (DocReview == null) DocReview = window.DocReview;
    if (Backbone == null) Backbone = window.Backbone;
    return console.log("body");
  })(DocReview, Backbone);

Я думаю, что я сравниваю второй способ с ключевым словом do, так как он более аккуратный, но я не уверен.

Кто-нибудь разделяет мнение по этому вопросу?

1 Ответ

1 голос
/ 09 марта 2012

Другой вариант:

DocReview.DocumentsApp = do ({DocReview, Backbone} = window) ->
    console.log "body"

Компилируется в:

DocReview.DocumentsApp = (function(_arg) {
  var Backbone, DocReview, _ref;
  _ref = _arg != null ? _arg : window, DocReview = _ref.DocReview, Backbone = _ref.Backbone;
  return console.log("body");
})({
  DocReview: DocReview,
  Backbone: Backbone
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...