Статические классы и методы в coffeescript
Я хочу написать статический вспомогательный класс в CoffeeScript. Это возможно?
класс:
class Box2DUtility
constructor: () ->
drawWorld: (world, context) ->
использование:
Box2DUtility.drawWorld(w,c);
1 ответ:
вы можете определить методы класса, добавив к ним префикс
@
:class Box2DUtility constructor: () -> @drawWorld: (world, context) -> alert 'World drawn!' # And then draw your world... Box2DUtility.drawWorld()
демо: http://jsfiddle.net/ambiguous/5yPh7/
и если вы хотите, чтобы ваш
drawWorld
чтобы действовать как конструктор, то вы можете сказатьnew @
такой:class Box2DUtility constructor: (s) -> @s = s m: () -> alert "instance method called: #{@s}" @drawWorld: (s) -> new @ s Box2DUtility.drawWorld('pancakes').m()