从同一类中的另一种方法在类实例中调用方法

问题描述:

我试图从getUser调用方法clean,但它返回undefined。 如果我打电话u.test(),它完美的作品。从同一类中的另一种方法在类实例中调用方法

我该如何解决这个问题?

class User 
    constructor:() -> 
     @db = # connect to db... 

    clean: (user, callback) -> 
     delete user.password 
     callback user 


    getUser: (id) -> 
     @db.get id, (err, user) -> 
      @clean user, (u) -> console.log u 

    test:() -> 
      @clean {name: "test", password: "hello"}, (u) -> 
       console.log u 

u = new User 
u.getUser() 

您希望=>为内部函数。

在你的内部函数,用 - >,它的默认绑定到一个undefined正常功能。使用=>,将其绑定到函数实例化上下文的this值。