6
我有一個混合類型的虛擬貓鼬模式。例如:當值是對象時不調用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 []
正如你會發現它絕不會顯示「設置{}」,任何理由,這也不行?
什麼時候該對象具有屬性? – Chad
當對象具有屬性時,結果相同。 – evanrs
奇怪,+1我也對此感興趣。如果當時沒有人回答,我明天可以進行調查。 – Chad