美好的一天,
我不知道我是否可以很好地解释这一点,但是我想使用一个ES6类创建一个可以像这样调用的对象。 var = varaibles obj = objects
obj.var
obj.var.method
obj.var.var.method
obj.method.var
等等。
我只能做一步
obj.var && obj.method
如果有人可以帮助我,我将非常感谢
这就是我所做的
class Table extends someClass {
constructor() {
super();
this.column = {
sort: () => {
console.log("firing");
},
resize: () => {
console.log("firing");
}
};
this.cells = {
edit: () => {
console.log("firing");
}
};
}
myMethods() {
//BLAH
}
}
答案 0 :(得分:1)
据我所知,这是我的解决方案。
如果我返回一个充满方法的对象,我可以随意使用该对象。
class someClass {
// this is a parent method
Parent() {
console.log(`From a Parent`)
}
// a getter that returns an object
get parentWithChild() {
return {
child() {
console.log(`From a Child`)
}
}
}
// a function that returns an object
Methods() {
return {
child() {
console.log(`From a Child`)
}
}
}
}
const cool = new someClass();
cool.Parent(); // From a Parent
cool.parentWithChild.child(); // From a Child
cool.Methods().child(); // From a Child
您也可以在扩展类上使用类似的模式。