为什么 firebase cli 会给出 TypeError
Why do the firebase cli give a TypeError
我已经有一些 运行 没问题的 firebase 云函数,现在我尝试将 SendGrid 功能添加到 https://youtu.be/JVy0JpCOuNI 中描述的其中一个函数中。 firebase CLI 不会 运行 我的代码,因为它说它有一个 TypeError
代码是用 Typescript 编写的,编译器没有给出任何错误。我正在使用最新版本的 CLI 和 SDK。
admin.initializeApp();
const firebaseConfig = JSON.parse(process.env.FIREBASE_CONFIG);
const SENDGRID_API_KEY = firebaseConfig.sendgrid.key;
const sgMail = require(‘@sendgrid/mail’);
sgMail.setApiKey(SENDGRID_API_KEY);
我已经检查过 firebase 配置包含 sendgrid 键:
$ firebase functions:config:get
{
"sendgrid": {
"key": "MY_SEND_GRID_KEY"
}
}
当我尝试部署 --only 函数时得到这个输出:
functions: Failed to load functions source code. Ensure that you have the latest SDK by running npm i --save firebase-functions inside the functions directory. :warning: functions: Error from emulator. Error occurred while parsing your function triggers.
TypeError: Cannot read property ‘key’ of undefined
错误的是这一行:
const SENDGRID_API_KEY = firebaseConfig.sendgrid.key;
我可以更改什么以避免出现此错误?
您通过 firebase functions:config:get
使用 CLI 设置的变量不会在 process.env.FIREBASE_CONFIG
中结束。他们最终在 functions.config()
.
import * as functions from 'firebase-functions'
const key = functions.config().sendgrid.key
FIREBASE_CONFIG 仅确定管理 SDK 应如何在不向 admin.initializeApp() 传递参数的情况下进行初始化。
我已经有一些 运行 没问题的 firebase 云函数,现在我尝试将 SendGrid 功能添加到 https://youtu.be/JVy0JpCOuNI 中描述的其中一个函数中。 firebase CLI 不会 运行 我的代码,因为它说它有一个 TypeError
代码是用 Typescript 编写的,编译器没有给出任何错误。我正在使用最新版本的 CLI 和 SDK。
admin.initializeApp();
const firebaseConfig = JSON.parse(process.env.FIREBASE_CONFIG);
const SENDGRID_API_KEY = firebaseConfig.sendgrid.key;
const sgMail = require(‘@sendgrid/mail’);
sgMail.setApiKey(SENDGRID_API_KEY);
我已经检查过 firebase 配置包含 sendgrid 键:
$ firebase functions:config:get
{
"sendgrid": {
"key": "MY_SEND_GRID_KEY"
}
}
当我尝试部署 --only 函数时得到这个输出:
functions: Failed to load functions source code. Ensure that you have the latest SDK by running npm i --save firebase-functions inside the functions directory. :warning: functions: Error from emulator. Error occurred while parsing your function triggers.
TypeError: Cannot read property ‘key’ of undefined
错误的是这一行:
const SENDGRID_API_KEY = firebaseConfig.sendgrid.key;
我可以更改什么以避免出现此错误?
您通过 firebase functions:config:get
使用 CLI 设置的变量不会在 process.env.FIREBASE_CONFIG
中结束。他们最终在 functions.config()
.
import * as functions from 'firebase-functions'
const key = functions.config().sendgrid.key
FIREBASE_CONFIG 仅确定管理 SDK 应如何在不向 admin.initializeApp() 传递参数的情况下进行初始化。