我正在使用Typescript编写一些Firebase云功能,如下所示:
index.ts
export * from "./Module1";
Module1.ts
import * as functions from "firebase-functions";
export const test = functions.https.onRequest(
(request, response) => {
console.log("Hello");
}
);
然后使用firebase deploy
将代码编译成Javascript并上传。整个部署过程运行无误。但是lib
目录中的已编译 Module1.js 没有console.log()
行:
Module1.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const functions = require("firebase-functions");
exports.test = functions.https.onRequest((request, response) => {
}
然后,我在Firebase控制台中签入,行console.log("Hello");
没有日志输出。我猜tsc
可能剥离了console.log()
,但这只是一个猜测。我仍然不知道为什么会这样。我的 tsconfig.json 如下:
tsconfig.json
{
"compilerOptions": {
"module": "commonjs",
"noImplicitReturns": true,
"noUnusedLocals": true,
"outDir": "lib",
"sourceMap": true,
"strict": true,
"target": "es2015",
"resolveJsonModule": true,
"esModuleInterop": true
},
"compileOnSave": true,
"include": ["src"]
}
有人可以帮我吗?
答案 0 :(得分:1)
愚蠢的我。在我的本地代码中,我没有将r"(?<=\|)[^\|]*(?=\|)"
写入另一个文件Module2.ts中。感谢您的宝贵时间,不便之处,敬请谅解...
将其移至Module1.ts之后,它可以正常工作。
也许这就是为什么不建议熬夜写代码的原因...