0
如何在CoffeeScript中編寫以下內容?MooTools類與CoffeeScript的綁定
showMessage: function() {
$('myelement').addEvent('click', function() {
alert(this.options.message);
}.bind(this));
},
如何在CoffeeScript中編寫以下內容?MooTools類與CoffeeScript的綁定
showMessage: function() {
$('myelement').addEvent('click', function() {
alert(this.options.message);
}.bind(this));
},
我相信下面應該工作:
SomeClass = new Class
showMessage: ->
$('myelement').addEvent 'click', =>
alert @options.message
CoffeScript是有點不可思議,它總是輸出return
無處不在,這有時會導致問題,但大多數時候它沒有。
謝謝,它的工作原理。這裏是一個完整的例子:
SomeClass = new Class
Implements: Options
options: {}
initialize: (options)->
@setOptions options
return
showMessage: ->
$('myelement').addEvent 'click', =>
alert @options.message
完全正確。還要注意,無論瀏覽器是否定義提問者代碼所依賴的'Function.prototype.bind',''=>'「綁定函數操作符都可以工作。 (IE8甚至Safari 5都不支持,儘管你可以用[polyfill](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Function/bind#Compatibility)來定義它。) –
我不知道你爲什麼選擇添加一個類,你可以寫'showMessage = - >' –