Я могу сказать, что он лежит в основе mon goose поведение Вы можете отправить JSON с 'id' вместо '_id', виртуальное свойство на всех ваших моделях - это довольно безопасный и простой способ сделать это.
Пример:
export const NotesSchema = new Schema({
title: String,
description: String,
});
NotesSchema.virtual('id')
.get(function() {
return this._id.toHexString();
});
или вы можете создать метод toClient () в ваших моделях, где вы это делаете. Это также хорошее место для переименования / удаления других атрибутов, которые вы не хотите отправлять клиенту:
NotesSchema.method('toClient', function() {
var obj = this.toObject();
//Rename fields
obj.id = obj._id;
delete obj._id;
return obj;
});