Nestjs не возвращает пустой объект json - PullRequest
0 голосов
/ 07 ноября 2019

Я получил данные из 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]');

Что здесь не так, пожалуйста, помогите мне решить эту проблему.

Полезные ответы приветствуются! Заранее спасибо !!

...