Правильное сообщение об ошибке - вы не возвращаете ничего из вашей функции, что аналогично возвращению undefined
. Вместо этого вы возвращаете null из функции обратного вызова, которую вы передали bwipjs.toBuffer()
. Возвращаемое значение этой внутренней функции не распространяется на внешнюю функцию.
Если вы просто вернете ноль из верхнего уровня вашей функции, вы можете остановить эти сообщения об ошибках, но код не будет работать правильно. Облачные функции отключат всю асинхронную работу, начатую внутри функции, после того, как функция вернет значение, которое не является обещанием. Скорее всего, он вообще ничего не сделает.
Вам нужно будет вернуть обещание, которое разрешается, когда вся асинхронная работа завершена в вашей функции. Прямо сейчас это похоже на вызов toBuffer()
, а также update()
в базу данных реального времени.
Может оказаться полезной документация по асинхронному программированию в функциях. Возможно, вы также захотите посмотреть этот видеоролик о работе с обещаниями в облачных функциях .