4

我试图从 调用该方法cleangetUser但它返回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()
4

1 回答 1

3

你想要=>的内部功能。

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

于 2013-03-01T13:38:19.463 回答