我在IntelliJ中使用TypeScript。
假设我有这个
const functions = require('firebase-functions');
然后我像这样使用它:
exports.doSomething = functions.https.onCall((data, context) => {...}
但是,它实际上并没有将https
链接到任何东西。它被认为是类型any
。然后它也不知道onCall
的类型。
我发现可以通过将其添加到文件顶部来解决此问题:
import {onCall} from "firebase-functions/lib/providers/https";
然后像这样使用它:
exports.doSomething = onCall((data, context) => {...}
但是,这不是一个好的解决方案,因为其他名称空间可能包含onCall
,因此我需要对其进行区分。
所以,我的问题是:当我使用require()
导入内容时,如何使它理解类型?
答案 0 :(得分:0)
您需要使用import name = require ('path')
语法:
import functions = require('firebase-functions')
您也可以尝试
import * as functions 'firebase-functions';
如果您使用适当的模块系统,则导入将转换为require