我试图将函数对象包含为静态类属性,以调用myClass.setPayload [id] .call(this,buffer)。
实际上,我有这个:
var setPayload = {
0x01: function(buffer){...},
0x0a: function (buffer) {...}
}
class myClass{
constructor(buffer){
...
setPayload[buffer[1]].call(this, buffer.slice(...))
}
}
目标是抑制构造函数的nedd,所以我尝试以下,这不起作用:
class myClass{
static setPayload = {
0x01: function(buffer){...},
0x0a: function(buffer){...}
}
}
建议?
答案 0 :(得分:2)
静态仅用于定义类的方法 - 请参阅static - JavaScript 您可以设置:
MyClass.setPayLoad = ...
// or make a getter function:
class MyClass {
static get setPayLoad() {
return ....;
}
}