代码之家  ›  专栏  ›  技术社区  ›  Darren

触发Firebase函数更新文档字段值

  •  0
  • Darren  · 技术社区  · 7 年前

    onUpdate 字段值,而不是整个文档。

    有没有可能使用 firebase-functions lastUpdate ? 或者,我倾向于 HTTP 触发器通过调用 onClick axios 但找不到任何有助于我理解的资源、文档或教程。如果你知道的话,我很想看看。

    const functions = require('firebase-functions');
    const admin = require('firebase-admin');
    const sgMail = require('@sendgrid/mail');
    
    try {
      admin.initializeApp();
    } catch (e) {
      console.log(e);
    }
    
    var SENDGRID_API_KEY = functions.config().sendgrid.key;
    sgMail.setApiKey(SENDGRID_API_KEY);
    
    exports = module.exports = functions.firestore
      .document('users/{id}')
      .onUpdate(snap => {
        const user = snap.data();
        const msg = {
          to: user.email,
          from: 'example@example.com',
          templateId: 'd-6c0e0385808c480ab475748a6eeed773',
          dynamic_template_data: {
            firstName: user.firstName,
            email: user.email,
            id: user.id
          }
        };
        return sgMail.send(msg).catch(err => console.log(`${user.email} - ${err}`));
      });
    
    1 回复  |  直到 7 年前
        1
  •  4
  •   Frank van Puffelen    7 年前

    CloudFireStore在文档级别触发云功能。只有当文档中的特定字段发生更改时,才可以选择触发函数。如果您希望触发器具有这种粒度级别,可以考虑使用实时数据库。

    推荐文章