我有以下代码:调用coffescript超级方法
class Animal
constructor: (@name) ->
say:() -> console.log "Hello from animal called #{ @name }"
class Dog extends Animal
say:() ->
super.say()
console.log "Hello from dog called #{ @name }"
a = new Animal('Bobby')
a.say()
d = new Dog("Duffy")
d.say()
结果不
Hello from animal called Bobby
Hello from animal called Duffy
Hello from dog called Duffy
,但我得到了以下错误:
Hello from animal called Bobby
Hello from animal called Duffy
Uncaught TypeError: Cannot call method 'say' of undefined
为什么超级未定义?如何调用父级方法以扩展它?由于
你猜是我的猜测......让我不知道他们为什么不只是使它像几乎所有人猜测它应该工作?也许是一个有趣的讨论 – PandaWood 2016-07-05 07:16:06