Результаты поиска по электронной почте - PullRequest
0 голосов
/ 31 мая 2019

У меня есть база данных firebase, где onCreate Google Cloud Functions вызывает nodemailer и отправляет мне электронное письмо. Все работает нормально, но теперь я пытаюсь включить данные, которые были добавлены в базу данных в электронном письме. Я не могу заставить это работать, по-видимому, потому что это не в текстовом формате, и я попытался преобразовать в текст, и это, кажется, не делает этого. Что я делаю не так?

const functions = require('firebase-functions');
const nodemailer = require('nodemailer');
// Configure the email transport using the default SMTP transport and a GMail account.
// For other types of transports such as Sendgrid see https://nodemailer.com/transports/
 // TODO: Configure the `gmail.email` and `gmail.password` Google Cloud environment variables.
const gmailEmail = functions.config().gmail.email;
const gmailPassword = functions.config().gmail.password;
const mailTransport = nodemailer.createTransport({
  service: 'gmail',
  auth: {
    user: gmailEmail,
    pass: gmailPassword,
  },
});

exports.sendWelcomeEmail =      functions.database.ref('/PickupRequests/{pushId}')
.onCreate(async(snapshot, context) => {

  const val = snapshot.data;

  const mailOptions = {
    from: '<noreply@firebase.com>',
    to: "mike@puravidalaundry.com",
    subject: "New Pickup Request",
    text: val //How do i convert this to a text format?
  };

  try {
    await mailTransport.sendMail(mailOptions);
    console.log('email sent');
  } catch(error) {
    console.error('There was an error while sending the email:',     error);
  }
  return null;
});

Ответы [ 2 ]

0 голосов
/ 13 июня 2019

разобрался. Мне пришлось создать новую переменную const newvar = JSON.stringify (val), а затем я сказал текст: newvar

0 голосов
/ 31 мая 2019

Чтобы получить значение из снимка, используйте snapshot.val(). Итак:

const val = snapshot.val();

Обратите внимание, что это показано в примере в документации по обработке данных событий для облачных функций, запускаемых базой данных в реальном времени .

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