当前位置: 首页 > 知识库问答 >
问题:

TypeScript错误-类型“Reference”上不存在属性“get”。TS2339

满增
2023-03-14

不过,当我尝试使用firebase数据库时,我做了一个const来获取firebase数据库中的现有房间。get()在线:const roomRef=await database。ref(rooms/${roomCode})。get();

它报告以下错误:D:/react/app/letmeask/src/pages/Home中的TypeScript错误。tsx(35,65):类型“Reference”上不存在属性“get”。TS2339

谁能帮帮我吗?

完整代码:

异步函数handleJoinRoom(event:FormEvent){event.preventDefault();

    if (roomCode.trim() === '') {
        return;
    }

    const roomRef = await database.ref(`rooms/${roomCode}`).get();

    if (!roomRef.exists()) {
        alert('Room does not exists.');
        return;
    }

    if (roomRef.val().endedAt) {
        alert('Room already closed.');
        return;
    }

    history.push(`/rooms/${roomCode}`);
}

在此输入图像描述

共有1个答案

井宪
2023-03-14

根据Firebase v8文档(https://firebase.google.com/docs/database/web/read-and-write#read_data_once_with_get),您的代码应该获得对数据库的引用,然后使用child进一步访问以下级别:

const dbRef = firebase.database().ref();
const snapshot = await dbRef.child("rooms").child(roomCode).get();
if (!snapshot.exists()) {
 ...
 类似资料:
  • 我已将TS添加到我的React/Redux应用程序中。 我在我的应用程序中使用对象,如下所示: TS抛出一个错误: 类型脚本错误:类型“窗口”上不存在属性“FB”。TS2339 我想修正这个错误。 我在这里找到了答案https://stackoverflow.com/a/56402425/1114926 为什么第一个版本不起作用,而第二个版本起作用,尽管我根本没有指定FB属性?

  • 我使用的是完全修补过的Visual Studio 2013。我正在尝试使用JQuery、JQueryUI和JSRender。我也在尝试使用打字。在ts文件中,我得到如下错误: 类型“{}”上不存在属性“fade div”。

  • 问题内容: 我在下面的代码块上收到此错误。 我还发现了表明存在功能的链接。 http://definitelytyped.org/docs/typescript-services-- typescriptServices/classes/typescript.stringutilities.html 我会错过一些文件吗? 问题答案: 是ES6函数,因此您需要以TypeScript编译器设置为目标,

  • 错误: 类型{儿童:字符串;严重性:字符串;sx:{宽度:字符串; }; }' 不能分配给类型'Intrinsic属性 警报组件 使用警报组件

  • 我试图在登录过程后获得连接的用户模型, 首先,在CanActivate guard检查了带有用户JSON对象的本地存储并发现该对象为空之后,用户将重定向到“/login”URL 然后用户登录并重定向回根URL“/”,在连接过程中我使用AuthService,它将从服务器返回的用户对象保存在用户模型中 这是我的守卫:

  • 所以下面的代码是在Angular 4中,我不知道为什么它没有按预期的方式工作。 下面是我的处理程序的一个片段: 超文本标记语言元素: 代码给了我错误: 属性值在类型Event塔吉特上不存在。 但是从< code>console.log中可以看出,该值确实存在于< code>event.target中。