节点javascript“this”是全局的

时间:2016-03-29 09:44:52

标签: javascript node.js

我知道这个问题已得到很好的讨论,但我找不到合适的顺利解决方案。

问题:我只是调用一个类的方法,但是“this”变成了全局而不是自我类。

主要代码:

async.parallel({
        users1: function(cb){userRepository.all(cb)},
        users2: userRepository.all
    },
    function(err, results) {
        //dontcare
    });

appt-repository代码:

var User = require('../models/user');

var UserRepository = function() {
    this.users = {};
};

UserRepository.prototype.all = function(done) {
    console.log(this);
    done(null, this.users);
};

module.exports = new UserRepository();

所以你可以在主代码中看到: 有两个调用,一个在回调中完美运行, 第二个,简单地放置类方法。 第二个问题是......

用一个选项很容易解决,但我希望有一个更优雅的方式然后只是为了修复“thi

而创建一个匿名函数

0 个答案:

没有答案