Calling a method from the constructor in Coffeescript
10,457
Solution 1
It is possible. However, to refer to the method you must use @move()
or this.move()
, the name move()
itself is not enough.
Solution 2
Gotcha Alert: if you find that @ or this does NOT refer to the new instance in a constructor, check you remembered to use the NEW keyword:
instance = new Class()
NOT:
instance = Class()
This caught me out and was really frustrating. Hope this helps someone else!
Related videos on Youtube
Author by
ThatHybrid
Java, Ruby & Javascript with a little bit of Python.
Updated on June 04, 2022Comments
-
ThatHybrid almost 2 years
Is it possible to call a method from the constructor in Coffeescript?
e.g.class Animal constructor: (@name) -> move() move: (meters) -> alert @name + " moved #{meters}m." class Snake extends Animal move: -> alert "Slithering..." super 5 sam = new Snake "Sammy the Python"
This is generating the following error message "ReferenceError: move is not defined"