Я получил данные из json от mongodb через mongoose, когда я попытался вернуть пустой объект, который он не возвращает. когда я жестко закодировал JSON, он возвращался.
КОНТРОЛЛЕР:
@Post(':objectId')
async mquery(
@Param('objectId') objectId: string,
): Promise<any> {
return this.queryService.fetchData(id);
}
СЕРВИС:
async fetchData(objectId: string) {
var recorddata: any = await this.recordModel
.findById(new ObjectID(objectId))
.exec();
return recorddata;
}
Данные от модели (Db) будут возвращать ниже json
{
"_id": "5dc40e6acdaa29631894f55b",
"data": {
"coordinates": {
"type": "FeatureCollection",
"features": [
{
"id": "7fb14d4598312bb500ae73c9ff9d5ec2",
"type": "Feature",
"properties": {
"s": "s"
},
"geometry": {
"coordinates": [
-100.57304953867006,
35.51213840759657
],
"type": "Point"
}
},
{
"id": "86a04624576d1eedd89f32a4d8d33823",
"type": "Feature",
"properties": {}, <- its only not returning
"geometry": {
"coordinates": [
[
-112.4456250000001,
49.484726455955666
],
[
-99.78937500000032,
51.93292501260265
],
[
-104.35968750000049,
46.18230835878998
],
[
-116.6643750000002,
44.452022329796705
]
],
"type": "LineString"
}
}
]
}
},
"createdAt": "2019-11-07T12:30:34.268Z",
"updatedAt": "2019-11-07T14:12:42.598Z",
"__v": null
}
Я получаю следующий результат,
{
"_id": "5dc40e6acdaa29631894f55b",
"data": {
"coordinates": {
"type": "FeatureCollection",
"features": [
{
"id": "7fb14d4598312bb500ae73c9ff9d5ec2",
"type": "Feature",
"properties": {
"s": "s"
},
"geometry": {
"coordinates": [
-100.57304953867006,
35.51213840759657
],
"type": "Point"
}
},
{
"id": "86a04624576d1eedd89f32a4d8d33823",
"type": "Feature",
******MISSING****
"geometry": {
"coordinates": [
[
-112.4456250000001,
49.484726455955666
],
[
-99.78937500000032,
51.93292501260265
],
[
-104.35968750000049,
46.18230835878998
],
[
-116.6643750000002,
44.452022329796705
]
],
"type": "LineString"
}
}
]
}
},
"createdAt": "2019-11-07T12:30:34.268Z",
"updatedAt": "2019-11-07T14:12:42.598Z",
"__v": null
}
Если я устал от того же в отдельном решении с жесткимзакодированный JSON, он вернет пустой объект. Но при извлечении из MongoDB он не возвращается.
Если я попробую приведенный ниже код, он вернется,
return _.get(recorddata, 'data.coordinates.features[1]');
Что здесь не так, пожалуйста, помогите мне решить эту проблему.
Полезные ответы приветствуются! Заранее спасибо !!