javascript - 如何在 JavaScript 中调用类方法

标签 javascript javascript-objects

我目前正在学习ES6。当我尝试新功能时,我遇到了一个问题。如何调用类方法。

假设我在一个文件中有一个类,如下所示:

class Auth {
    checkUserSignedIn() {
       //check user signed in
    }

    signupUser(account) {
       //signup user
    }

    loginUser(account) {
        //login user
    }

    getCurentUser() {
        //Current User
    }
}

module.exports = Auth;

然后在其他一些文件中,假设我想调用这些函数的 Controller 。

const Auth = require('./auth');
class Controller {
    signupUserUsingEmailAndPass(user) {
        Auth.signupUser(account);

    }

    loginUserUsingEmailAndPass(account) {
            Auth.loginUser(account);
    }

    isUserSignedIn() {
      checkUserSignedIn();
    }
}

module.exports = Controller;

但这根本不起作用。我想有些东西我理解不正确。有什么建议/建议吗?

最佳答案

类中定义的方法需要该类的实例,即某处的new Auth

你的 Controller 应该定义有

class Controller {

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

这种通过 require('myclass') 的方法允许您注入(inject) Auth 类的不同实现。

如果您不需要这些方法的 Auth 实例,请将它们声明为静态。更多信息here

关于javascript - 如何在 JavaScript 中调用类方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45698479/

相关文章:

javascript - js从两个数组中删除对象引用

javascript - 了解用于计算字符串中每个字符出现次数的 JavaScript 代码

javascript - 如何在 VueJs 中动态添加属性

javascript - 试图让一个 div 进入查看

javascript - 如何将一个函数用于不同的 JS 类?

javascript - 是否可以使用类似 LIKE 运算符之类的字符串在 javascript 对象中进行搜索?

javascript - 将值传递给对象内的 KO 计算可观察值

Javascript 双 If 语句

javascript - 在 Node js 中解析 Json Twitter 响应

asp.net - 在呈现的 HTML 中为自定义 UserControl 提供一个 ID