Как проверить, имеет ли документ пожарного магазина определенное поле - PullRequest
0 голосов
/ 24 апреля 2019

У меня есть облачная функция, которая получает все документы в коллекции. После получения всех документов мне нужно проверить, есть ли поле, скажем, «ссылка» существует в каждом документе. Если в документе нет поля «ссылка», я обновлю этот документ ссылкой. Кстати, ссылка 'недавно' была добавлена, поэтому у некоторых документов она есть, а у некоторых ее нет. Есть ли способ проверить, есть ли поле в документе?

const taskCol = await firestore.collection('/tasks/').get();

taskCol.forEach(task=>{
    const taskData = task.data();

    //check if field is existing. 
    if(taskData.link == null){ //THIS PART IS NOT WORKING
    //i tried taskData.get('link') == null -->not working
   //i tried taskData.link.exist() == true -->not working either


    //create  link
    taskData.dynamicLink = createLink();

    //update the task doc here
    /*my update task code is here*/
    }


});

1 Ответ

1 голос
/ 24 апреля 2019

Следующие действия помогут:

taskCol.forEach(task => {
    const taskData = task.data();

    //check if field is existing. 
    if (taskData.link)  {
          ....
    }

    ...
});

Фактически, метод data() возвращает «стандартный» объект JavaScript (или undefined).

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