【问题标题】:firebase code organization for util methodsutil方法的firebase代码组织
【发布时间】:2018-12-16 04:55:12
【问题描述】:

我的 index.js 如下所示

import * as functions from 'firebase-functions';
import * as rp from "request-promise-native";
import * as btoa from "btoa";
import * as admin from 'firebase-admin';
import * as SendGrid from '@sendgrid/mail';
admin.initializeApp(functions.config().firebase)

export const dialog_handler = functions.https.onRequest(async (request, response) => {
    console.log("in dialog_handler request payload is:" + request.body.payload)
    const reqParams = JSON.parse(request.body.payload)

    const callbackId = reqParams.callback_id
    console.log(":::::::::::::::Callback Id:" + callbackId)
    const submission = reqParams.submission
    console.log(submission )
    let payload = {}

    if(callbackId === 'send_feedback'){
        await admin.database().ref("feedback").push(submission);
        payload = { "attachments": [
            {
                "fallback": "Feedback submitted",
                "title": "Feedback submitted. We will get back to you as soon as possible."
            }]
       }

    }
}

上面的实际代码无关紧要。主要是在有效载荷下方,这对我来说是一种可重用的代码。我怎样才能将它从 index.ts 中移出并仅引用它并保持我的 index.tx 小。

 payload = { "attachments": [
                {
                    "fallback": "Feedback submitted",
                    "title": "Feedback submitted. We will get back to you as soon as possible."
                }]
           }

【问题讨论】:

    标签: node.js typescript firebase google-cloud-functions


    【解决方案1】:

    这实际上与 Cloud Functions 没有任何关系,而是与 TypeScript 模块语法和解析有关。

    您可以有一个相邻的文件payload.ts,如下所示:

    export const payload = { "attachments": [{
                    "fallback": "Feedback submitted",
                    "title": "Feedback submitted. We will get back to you as soon as possible."
                }]
           }
    

    然后你可以从另一个文件中获取它的值:

    import { payload } from "./payload"
    

    您可能想阅读module resolution in TypeScript

    【讨论】:

      猜你喜欢
      • 2017-07-27
      • 2011-08-08
      • 1970-01-01
      • 1970-01-01
      • 2018-10-12
      • 1970-01-01
      • 2011-06-04
      • 2014-01-29
      • 1970-01-01
      相关资源
      最近更新 更多