2012-04-12 20 views
5

CSでこれを書く方法がわかりません。多分some1が助けることができる:CoffeeScript、匿名関数を含む複数のパラメータを渡す

FB.getLoginStatus(function (response) {} , {scope : scope}) 

ありがとう。

+0

IVEは何を試していない...とアイデアの男のうち、すべてのイム..:P – d4rklit3

+0

http://stackoverflow.com/questions/6720402/in-coffeescript-how-can –

+0

@ d4rklit3もし私があなただったら、私はしばらくの間coffeescriptを取り消し、最初にjavascriptの良い把握をしようとすると、私はあなただった - あなたは機能を呼び出すと匿名機能を持つコール。 –

答えて

9

あなたがそうのようないくつかのCoffeeScriptを書くでしょう... JavaScriptでそう...

FB.getLoginStatus(function(response) { 
    return doSomething(); 
}, { 
    scope: scope 
}); 
+2

これは恐ろしいフォーマットです。 –

+9

私のクイックサンプルがあなたの完璧な要求を満たしていないことは申し訳ありません。 – scottheckel

+1

あなたは許されています。 'FB.getLoginStatus receiveLogin、{scope}' –

4
FB.getLoginStatus(function(response) {}, { 
    scope: scope 
}); 

のようなJavaScriptに変換します

FB.getLoginStatus(
    (response) -> 
    doSomething() 
    {scope: scope}) 

は次のとおりです。

FB.getLoginStatus(
    (response) -> 
    { scope } 
) 

CoffeeScriptです。

複数のパラメータについてのご質問に答えるために、さらにこれらの例を見て:JavaScriptで

$('.main li').hover(function() { 
    return $(this).find('span').show(); 
}, function() { 
    return $(this).find('span').hide(); 
}); 

:CoffeeScriptので

$('.main li').hover(
    -> $(@).find('span').show() 
    -> $(@).find('span').hide() 
) 

はに等しいです。

(無名関数なし)複数のパラメータを処理に関するさらに簡単な例は次のようになります。JavaScriptで

var hello; 

hello = function(firstName, lastName) { 
    return console.log("Hello " + firstName + " " + lastName); 
}; 

hello("Coffee", "Script"); 

:CoffeeScriptの中

hello = (firstName, lastName) -> 
    console.log "Hello #{firstName} #{lastName}" 

hello "Coffee", "Script" 

はにコンパイルされます。

0

別のオプション:

FB.getLoginStatus(((response) ->),{scope}) 
関連する問題