小编eva*_*nrs的帖子

当值为object时,不调用Mongoose虚拟集函数

我有一个混合类型虚拟的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:{} } );
Run Code Online (Sandbox Code Playgroud)

当我运行此代码时,我得到:

SETTING 1
SETTING []
Run Code Online (Sandbox Code Playgroud)

你会注意到它从未显示"SETTING {}",为什么这不起作用?

参考Github上的问题

mongoose node.js

6
推荐指数
1
解决办法
1158
查看次数

标签 统计

mongoose ×1

node.js ×1