如果你做這樣的事情:
$ ->
$('#target').html('blabla').myFunction()
myFunction = ->
alert("OK")
轉換爲這樣的:
$(function() {
var myFunction;
$('#target').html('blabla').myFunction();
return myFunction = function() {
return alert("OK");
};
});
正如你所看到的,myFunction是包含一些結構的變化,但作爲對象當您執行$('#target'#).html('blablabla')時沒有名爲myFunction的方法,這就是您得到該錯誤的原因。
我不知道你正在嘗試做的,但你可以做這樣的事情
$ ->
myFunction = (data) ->
alert(data)
myFunction $('#target').html('blablabla')
其轉化爲:
$(function() {
var myFunction;
myFunction = function(data) {
return alert(data);
};
return myFunction($('#target').html('blablabla'));
});
如果你正在學習的CoffeeScript,一個好的網站想要轉換是http://js2coffee.org/
謝謝你那麼長的答案! – Rockbot