我有一个混合类型虚拟的 Mongoose 模式。例如:
var mongoose = require('mongoose') // version 3.3.1
var FooSchema = new mongoose.Schema( { x: Number } );
FooSchema.virtual('v').set( function(value){
console.log("SETTING", value);
});
var Foo = mongoose.model('Foo', FooSchema);
new Foo( { v:1 } );
new Foo( { v:[] } );
new Foo( { v:{} } );
当我运行这段代码时,我得到:
SETTING 1
SETTING []
您会注意到它从不显示“SETTING {}”,为什么这不起作用?
最佳答案
这是 Mongoose 中的一个未解决问题,已 fixed in a recent commit通过 Aaron Heckmann .
关于node.js - 当值为对象时不调用 Mongoose 虚拟集函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12736854/