Class 中的对象方法
Object Methods within a Class
我刚开始使用 ES6 classes
,我正在尝试弄清楚如何在 class 中对方法进行分组 我正在为 Table
创建 so 方法例如排序、调整大小等...
class Table extends someClass{
myMethods(){
//BLAH
}
var column={
sort:()=>{
console.log('firing');
},
resize:{
mousedown:()=>{
},
mousemove:()=>{
},
mouseup:()=>{
},
mouseout:()=>{
}
}
},
var cells={
edit:()=>{
console.log('firing');
}
}
}
//错误(意外标识符)
问题是 Table
class 已经在扩展(默认基数 class)someClass
我会说扩展 Column
class 之类的,但我不能,因为它已经在扩展基础 class.
问题: 我如何在已经扩展了另一个 class 的 Class 中组织我的方法 sort
,resize
? (或者这是非标准的,如果是,请提供正确的方法。)
您的代码无效,因为您在 class 正文中使用了 var
关键字。您只能在 class 主体中包含方法。您可以通过在方法中为它们设置值来为 class 创建属性。例如:
class Table extends someClass {
constructor() {
this.column = {
sort: () => {
console.log('firing');
},
resize: () => {
console.log('firing');
}
};
this.cells = {
edit: () => {
console.log('firing');
}
}
}
myMethods() {
//BLAH
}
}
现在您可以像这样访问方法:
var table = new Table();
table.column.sort();
此 class Table
语法声明类型为 Table
的 class。 {}
语法,例如:
{
edit: () => {
console.log('firing');
}
}
创建没有类型的对象。
Here's a guide on ES6 classes which should answer your other questions.
我刚开始使用 ES6 classes
,我正在尝试弄清楚如何在 class 中对方法进行分组 我正在为 Table
创建 so 方法例如排序、调整大小等...
class Table extends someClass{
myMethods(){
//BLAH
}
var column={
sort:()=>{
console.log('firing');
},
resize:{
mousedown:()=>{
},
mousemove:()=>{
},
mouseup:()=>{
},
mouseout:()=>{
}
}
},
var cells={
edit:()=>{
console.log('firing');
}
}
}
//错误(意外标识符)
问题是 Table
class 已经在扩展(默认基数 class)someClass
我会说扩展 Column
class 之类的,但我不能,因为它已经在扩展基础 class.
问题: 我如何在已经扩展了另一个 class 的 Class 中组织我的方法 sort
,resize
? (或者这是非标准的,如果是,请提供正确的方法。)
您的代码无效,因为您在 class 正文中使用了 var
关键字。您只能在 class 主体中包含方法。您可以通过在方法中为它们设置值来为 class 创建属性。例如:
class Table extends someClass {
constructor() {
this.column = {
sort: () => {
console.log('firing');
},
resize: () => {
console.log('firing');
}
};
this.cells = {
edit: () => {
console.log('firing');
}
}
}
myMethods() {
//BLAH
}
}
现在您可以像这样访问方法:
var table = new Table();
table.column.sort();
此 class Table
语法声明类型为 Table
的 class。 {}
语法,例如:
{
edit: () => {
console.log('firing');
}
}
创建没有类型的对象。
Here's a guide on ES6 classes which should answer your other questions.