不能从其他类调用函数

时间:2017-07-31 11:34:17

标签: angular ecmascript-6

我有2个文件。

1)accountService.js

export class Http {

forgotPassword(email) {
console.log(email)
  }
}

2)forgot-password.js

import {Http} from '../services/accountService'

 export class ForgotPassword {

 sendCode(email) {
    Http.forgotPassword(email)
  }
}

当我试图在Http.forgotPassword(email)中呼叫forgot-password.js时,出现控制台错误,即Http.forgotPassword中没有函数。

2 个答案:

答案 0 :(得分:3)

forgotPassword方法需要static,如果你想这样称呼它;

static forgotPassword(email) {
    console.log(email)
}

答案 1 :(得分:1)

在您的示例中,forgotPassword是一种实例方法。你需要做

export class ForgotPassword {
  constructor() {
    this.http = new Http
  }
  sendCode(email) {
    this.http.forgotPassword(email)
  }
}

但是,如果您显示的那些文件是整个代码,则既不应使用class es,也不应使用方法导出对象。 Just export the functions