なぜusernametoid
関数は何も返しませんか?私はそれをconsolingによって存在することを知っているが、それはotherplayerid
変数に格納されません?どうして?Node.jsは何も返さないでしょうか?
私のアプリ:
var userFunc = require('../factory/user_factory.js');
app.post('/api/kill', function (req, res) {
var username = "signature";//req.query.username;
var otherplayerid = userFunc.usernametoid(username);
if (!(otherplayerid)) {
console.log("other player is acually " + otherplayerid);
result.push("denne brukeren finnes ikke! " + otherplayerid);
} else {
}
});
と私のuser_factory(ポストAPIキルを呼び出す):
var articles = require('../controllers/articles.server.controller'),
path = require('path'),
mongoose = require('mongoose'),
Article = mongoose.model('Article'),
Users = mongoose.model('User'),
errorHandler = require(path.resolve('./modules/core/server/controllers/errors.server.controller'));
exports.usernametoid = usernametoid;
function usernametoid(id) {
var query = Users.findOne({ username : id });
query.exec(function(err, datas) {
console.log(datas._id);
return datas._id;
});
}
コンソール:
other player is acually undefined
57c1c0f3b6b20c011242bf22
コンソール出力はどのようなものですか? – Zeokav
非同期操作から情報を返そうとしています。あなたはそれをすることはできません。 – jfriend00
どうすればいいですか? – maria