Firebase Auth UserCredential - 指一个值,但用作类型



我正在使用Firebase,包括身份验证,在我的React应用程序中使用Typescript。所以这是在一个 .tsx 文件中

import UserCredential from 'firebase/auth'一样进口

我正在尝试将用户凭据类型应用于我的函数参数,如下所示

const myCallback = (result: UserCredential) => { //function contents }

但是我收到错误"'用户凭据'引用一个值,但在此处用作类型">

但是,当我检查用户凭据的类型定义时,它被定义为一个类型。它怎么能"引用一个值",但显然是一个类型?我希望能够使用它来键入我的函数参数,以实现智能感知和一致性等。我确定我错过了一些东西 - 所以除非我能弄清楚出了什么问题,否则这个问题可能会继续出现。我怎样才能做到这一点?

使用firebase.User解决了我的问题

import firebase from 'firebase'
const myCallback = (result: firebase.User) => {
// function contents
}

我希望它对你有用

好吧,我想我想通了。我不得不导入它并像这样使用它,

import { auth } from 'firebase';

const myCallback = (result: auth.UserCredential) => { //function contents }

您也可以只导入 Firebase 并使用 firebase.auth.UserCredential

以下有效(我正在使用 Compat firebase 库(:

// import
import firebase from "firebase/compat/app";
// use
userCredential: firebase.auth.UserCredential

最新更新