<分区>
我根据 MDN 的官方示例创建了一个类( https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes )
这是我的代码
class A {
}
const Mixer = BaseClass => class extends BaseClass {
static val = 10;
}
class B extends Mixer(A) {
myMethod() {
// Need some way to access the static member "val"
}
}
如何访问“val”?
如果没有 mixin(即 B 类扩展了 A,并且 val 在 A 类中是静态的)我可以完成“A.val”。
在这种情况下,Mixer.val 不起作用,并且根据我的理解,B 从匿名类扩展而来,因此无法通过名称访问父类(super class)。
编辑:我提错了问题。我真正的问题是在 Mixer 本身中访问 val。正如我的答案所指出的那样,在 B 中访问 val 非常简单。
例如
const Mixer = BaseClass => class extends BaseClass {
static val = 10;
myMethod2() {
// log the val member
}
}