私は次のように使用しようとしてpassport-local
います:
users.js:
var Users = function() {}
Users.prototype.findByUsername = function(username, cb) {
var user = { name: username };
cb(null, user);
};
Users.prototype.verify = function(username, password, done) {
this.findByUsername(username, function(err, user) {
done(null, user);
});
};
module.exports = Users;
app.jsで:
var Users = require('./users');
var users = new Users();
passport.use(new LocalStrategy(users.verify));
ログインしようとすると、TypeError: Object #<Strategy> has no method 'findByUsername'
.
私は Javascript (および node.js) を初めて使用しますが、いくつかの検索を行い、コンストラクター パターンを正しく使用していると思います。
では、なぜのインスタンスではなくthis
のインスタンスに設定されるのでしょうか。Strategy
Users