1 下面的B.prototype.compile方法中,无法访问super文章来源:https://www.toymoban.com/news/detail-626426.html
class A {
compile() {
console.log('A')
}
}
class B extends A {
compile() {
super.compile()
console.log('B')
}
}
B.prototype.compile = function() {
super.compile() // 报错,不可以在此处使用super
console.log('B2')
}
const b = new B()
b.compile() // A B2
2 替代方法如下文章来源地址https://www.toymoban.com/news/detail-626426.html
class A {
compile() {
console.log('A')
}
}
class B extends A {
compile() {
super.compile()
console.log('B')
}
}
B.prototype.compile = function() {
A.prototype.compile.call(this) // 替代super
console.log('B2')
}
const b = new B()
b.compile()
// A
// B2
到了这里,关于ES派生类的prototype方法中,不能访问super的解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!