Isenção de responsabilidade:Esta resposta é bastante datada, 2012! Pode não ser o mais preciso.
Da documentação do Mongoose.
https://mongoosejs.com/docs/schematypes.html:Role para baixo até a seção Array:
Nota:especificar um array vazio é equivalente a[Mixed]. A seguir, todas as matrizes de criação deMixed.
Detalhes sobre o que isso significa estão na seção Mixed logo acima da seção Array.
Aqui está o que você precisa fazer.
Defina um esquema para os documentos incorporados:
var Stuff = new Schema({
name: String,
value1: Number,
...
});
Use isso em vez de uma matriz vazia
[] :var MyDocSchema = new Schema({
name: String,
other: String,
stuff: [Stuff],
});