从类实例函数中运行的同一个类中的另一个方法调用类中的方法

时间:2013-03-01 13:27:29

标签: coffeescript

我尝试从clean调用方法getUser,但它返回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()

1 个答案:

答案 0 :(得分:3)

你想要内部函数=>

在你的内部函数中,使用 - >,默认情况下它是绑定到undefined的普通函数。使用=&gt ;,将其绑定到函数实例化上下文的this值。