не может вернуть все свойства объекта в res.send - PullRequest
0 голосов
/ 11 декабря 2019

У меня есть метод контроллера API, как показано ниже,

 let object = {
    "key1": "value1",
    "key2": "value2",
    "arrayKey": [
        {
           "arrKey": "arrValue",
            "arrKey1": 1
        }
     ]
 }
 export const foo = (req, res) => {
      object.arrayKey[0].arrKey2 = "somevalue";

      // this one is getting printed
      console.log("full pointer", object.arrayKey[0].arrKey2);

      // this one is gettig printed apart from arrKey2
      console.log("doc", JSON.stringify(object));

      // and the response below is coming correct
      // but arrKey2 is missing or undefined
      return res.status(200).send(object);
}

Здесь объект возвращает значение из mongoose.Schema. Может ли кто-нибудь помочь мне, почему arrKey2 печатается, когда я указываю его полностью, но почему не печатается или не используется при отправке ответа

1 Ответ

0 голосов
/ 12 декабря 2019

Можете ли вы использовать что-то вроде приведенного ниже кода:

return res.json(200, object);

Я предполагаю, что Express не выполняет cloneDeep для объекта. JSON.stringify делает клон глубоко. Надеюсь это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...