Node.js util方法的firebase代码组织
我的index.js如下所示Node.js util方法的firebase代码组织,node.js,typescript,firebase,google-cloud-functions,Node.js,Typescript,Firebase,Google Cloud Functions,我的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(funct
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."
}]
}
这实际上与云函数没有任何关系,而是与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"
你可能想好好读一读