【发布时间】:2019-11-16 21:20:46
【问题描述】:
我正在使用与 mongoDb 连接的 NestJs。 mongo 中的对象(以及nestjs 中的方案)具有以下结构{NAME: string, YEAR: number, COVER: string}。
Estoy usando NestJs conectado con mongoDb。 Los objetos que se guardan en mongo tiene la siguiente estructura。
接口和dto有结构
export class NAME {
readonly NAME: string;
readonly YEAR: number;
readonly COVER: string;
COVER_BASE64: string;
}
export interface NAME extends Document {
readonly NAME: string;
readonly YEAR: number;
readonly COVER: string;
COVER_BASE64: string;
}
在服务类中,我有下一个函数,它附加到从 Mongo 获取的对象的 cover_base64 属性。
async getAlbums(): Promise<Album[]> {
return new Promise((resolve, reject) => {
this.model.find().exec((err, objs) => {
if (err) { reject(err); }
const objres = objs.map(obj => {
const base64 = this.getBase64(obj);
obj.COVER_BASE64 = base64;
return obj;
});
resolve(objsres);
});
});
}
问题是控制器类中返回的对象没有 COVER_BASE64 属性。但是在调试服务时,我看到每个“albumsRes”对象的属性 COVER_BASE64 具有正确的值,但调试控制器该属性似乎“消失”。
控制器中不能存在该属性是有原因的,例如在邮递员中,http 请求没有获得 COVER_BASE64 属性。
【问题讨论】:
标签: typescript api nestjs