我尝试调用父方法,但是我收到错误:
错误:在类构造函数之外调用super
我的例子:
class xo{
cool(x){
console.log(`parent init${x}`)
}
}
class boo extends xo{
cool(val){
super(val);
console.log(`child init${x}`)
}
}
x = new boo;
答案 0 :(得分:7)
您调用的不是父方法,而是父构造函数,它在构造函数之外无效调用。您需要使用super.cool(val);
代替super(val)
;
class xo{
cool(x) {
console.log(`parent init${x}`)
}
}
class boo extends xo {
cool(val) {
super.cool(val);
console.log(`child init${x}`)
}
}
x = new boo();
答案 1 :(得分:3)
使用super.cool(val)
来调用超类上的cool
方法。 super()
调用超级班级'构造