新しいユーザーのコードは次のとおりです。
var User = mongoose.model('User', userSchema);
var usr = new User({ username: 'bob', email: 'bob@example.com', password: 'secret' });
loginをチェックするコードは次のとおりです。
passport.use(new LocalStrategy(function(username, password, done) {
  User.findOne({ username: username }, function(err, user) {
    if (err) { return done(err); }
    if (!user) { return done(null, false, { message: 'Unknown user ' + username }); }
    user.comparePassword(password, function(err, isMatch) {
      if (err) return done(err);
      if(isMatch) {
        return done(null, user);
      } else {
        return done(null, false, { message: 'Invalid password' });
      }
    });
  });
}));
usernameが存在しない場合は、"Unknown user __________"
と言う代わりに、データベースに新しいユーザーを作成unknown userしたいと思います。このコードを変更するにはどうすればよいですか?
そのログイン名がまだ存在しない場合、入力したログイン情報で新しいユーザーを作成したいと思います。
アップデート
私はこれを試していますが、うまくいきません。bob5 はデータベースに保存されていません。
passport.use(new LocalStrategy(function(username, password, done) {
  User.findOne({ username: username }, function(err, user) {
    if (err) { return done(err); }
 if (!user) { usr = new User({ username: 'bob5', email: 'bob5@example.com', password: 'secret' });
usr.save(function(err) {
  if(err) {
    console.log(err);
  } else {
    console.log('user: ' + usr.username + " saved.");
  }
});
これを入力すると、bob99 がデータベースに保存されます。だから私はユーザーを作成することができます... ifステートメント内で引数を渡す必要があるだけです(私は思います)。
usr = new User({ username: 'bob99', email: 'bob99@example.com', password: 'secret' });
usr.save(function(err) {
  if(err) {
    console.log(err);
  } else {
    console.log('user: ' + usr.username + " saved.");
  }
});