繁体   English   中英

JavaScript ES6:在es6类中分组方法?

[英]JavaScript ES6: Grouping methods in es6 classes?

我们中的一些人正在尝试创建一个JavaScript库,以便在RESTful API上快速运行JSON查询。

我想做的是将一组与其目的相关的方法分组。

例如;

通过API,我可以获得用户属性。 我没有在主对象下使用所有这些方法,而是将它们分组到API类对象中。

即改变这个:

myAPI.getUserById()

对此:

myAPI.User.getByID()

myAPI.User.getByName()

我们将使用下面的代码作为一个简单的例子。 我如何将我的User方法嵌套在myAPI类中的用户对象中?

class myAPI {
  constructor(url) {
    this.url = url;

    //Code to connect to instance...

  }

  getUserById(userId){
    // function
  }
}

解决了

class myAPI {
  constructor(url) {
    this.url = url;
    this.UserAPI = new UserClass(this);

    //Code to connect to instance...

  }

  getUserById(userId){
    // function
  }
}

class UserClass {
  constructor(parent){
    this.myAPI = parent;
  }
}

你可以使用组合:

class UserAPI {

    constructor(url) {
        this.url = url;
    }    

    getById() {
    }
}

class API {

    constructor(url) {

        this.url = url;
        this.User = new UserAPI(url);
    }
}

var myAPI = new API();

myAPI.User.getById();

这样,您可以将所有类别的组分成几类。 您甚至可以根据用户的要求区分API的不同实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM