【发布时间】:2012-11-29 03:02:00
【问题描述】:
我有一个混合类型的虚拟猫鼬模式。例如:
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 {}”,为什么这不起作用?
【问题讨论】:
-
对象有属性怎么办?
-
对象有属性时结果是一样的。
-
奇怪,+1 我也对此感兴趣。如果到那时还没有人回答,我明天可能会调查。