在jQuery页面explaining how to make plugins上,有一些代码:
(function ( $ ) {
var shade = "#556b2f";
$.fn.greenify = function() {
this.css( "color", shade );
return this;
};
}( jQuery ));
如何在CoffeeScript中表示这一点?如果我试试这个:
do ($) ->
x = 'do nothing'
它编译为:
(function($) {
var x;
return x = 'do nothing';
})($);
我无法弄清楚如何将jQuery
对象传递给函数。
答案 0 :(得分:2)
你在CoffeeScript中以与JavaScript相同的方式完成它。你只需要抛出一些额外的括号:
(($) ->
# plugin goes here and uses $
)(jQuery)
这就是这个JavaScript:
(function($) {
...
})(jQuery);
如果您对括号有病态恐惧,那么您仍然可以使用do
但是您使用默认值设置$
别名:
do ($ = jQuery) ->
# plugin code goes here
这也译为:
(function($) {
...
})(jQuery);