我在Mongoose Schemes中有4个不同变量的类似对象,并希望创建一个多次使用的Object Array。我知道我可以使用例如Box: [Vector] array
但这很不方便。一个例子可以更好地解释它:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var Vector4 = new Schema({
x: { type: Number },
y: { type: Number },
width: { type: Number },
height: { type: Number }
});
module.exports = mongoose.model('Entity', new Schema({
name: { type: String },
version: { type: Number },
AABB: Vector4, // want the Vector Object here
Box: Vector4, // want the Vector Object here.
Viewport: Vector4, // want the Vector Object here.
Outline: Vector4, // want the Vector Object here.
......
}));
我对Mongoose来说比较新,所以我可能会错误地使用这个Schema。任何输入都会很棒。
答案 0 :(得分:1)
mongoose模式只是一个基本的JS对象。你会做这样的事情:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var Vector4 = {
x: { type: Number },
y: { type: Number },
width: { type: Number },
height: { type: Number }
};
module.exports = mongoose.model('Entity', new Schema({
name: { type: String },
version: { type: Number },
AABB: Vector4, // want the Vector Object here
Box: Vector4, // want the Vector Object here.
Viewport: Vector4, // want the Vector Object here.
Outline: Vector4, // want the Vector Object here.
......
}));
区别在于Vector4
不是Schema
,而只是一个对象。