Rumah > Soal Jawab > teks badan
const ep = new eventproxy();
ep.fail(next);
EveryDay.getRankByTodayDate(TodayDate, ep.done('ranks'));
ep.all('ranks', function(ranks){
ranks.forEach(function(rank){
User.getUserById(rank.userId, ep.done(function(user){
rank.nickName = user.nickName; //这里不生效
console.log(rank,rank.nickName); rank.nickName 有值,但是打印出的rank没有nickName 属性
ep.emit('user');
}))
});
rank.nickName = user.nickName;
Mengapa tidak memberikan nilai secara langsung seperti ini berkuat kuasa? Bagaimanakah kita harus menyimpan nama panggilan pengguna yang ditanya ke dalam objek data?
某草草2017-06-05 11:10:53
Alasannya ialah jawapan @nightclub小新新.
Pada masa ini, saya menggunakan kaedah ini untuk menangani:
EveryDay.find({TodayDate}).lean()
.exec((err, ranks) => {
...
}
)
Saya akan menambah lagi apabila saya mendapat jawapan yang lebih baik nanti.
ringa_lee2017-06-05 11:10:53
Anda akan mengetahui dengan menyahpepijat struktur data hasil pertanyaan mongoose Hanya data yang ditakrifkan oleh skema anda boleh dikendalikan pada data mongoose Hanya kaedah get/set yang tidak boleh dikendalikan melainkan ia disimpan _doc. dalam atau ditukar kepada objek biasa