Firebase 错误:TypeError:无法使用“in”运算符在未定义中搜索“_delegate”

2023-12-27

我是 firebase 的新手,过去两天在查询和删除集合中的文档时遇到了一些困难。具体来说,每次启动服务器时,我都会尝试清除公司虚拟数据的整个集合,然后再循环虚拟数据并将其写入集合(以防止重复)。

我已经能够将我的公司虚拟数据写入我的“公司”集合中,没有问题。问题是当我尝试从集合中删除文档时;它不会删除,并且在将检索变量传递给 deleteDoc() 方法时似乎会引发以下错误。

注意:我决定先尝试仅删除一个文档。如果我能成功做到这一点并且它反映在 firebase 集合中,那么我应该能够毫无问题地清除整个集合。

类型错误:无法使用“in”运算符在未定义中搜索“_delegate”

据我所知,“in”关键字仅在检查对象上是否存在属性时才有效。我在函数的每个点记录了数据,以确保正确引用文档并将适当的数据类型传递给 deleteDoc() 函数(这将是一个对象)。

这是我将虚拟数据写入数据库的代码(工作正常):

export const dummyDataToFirebase = async() => {
  try {
    const batch = writeBatch(db);
    dummyData.forEach(doc => {
      addDoc(companyRef, doc)
      console.log(doc)
    })
    await batch.commit();
    console.log('success!')

  } catch (error) {
    console.error(error, 'try again!');
  }
} 

这是我从数据库集合中删除文档的代码(问题)

const deleteOne = async () => {
  try {
    const docRef = doc(companyRef, '86e9cade14e2a972c526db4b7c828ed7')
    const retrieve = await getDoc(docRef)
    console.log(retrieve)
    await deleteDoc(retrieve)
    if(retrieve.exists()) {
      console.log('still exists')
    } else {
      console.log('it worked!')
    }
  } catch (error) {
    console.error(error, 'nope')
  }
}
deleteOne()

这是我从我编写的 deleteDoc 函数中得到的错误:

index.js:1 TypeError: 无法使用“in”运算符在未定义中搜索“_delegate” 在 Tc (index.esm2017.js:14691) 在 ph 值 (index.esm2017.js:17522) 在 deleteOne (Firebase.jsx:101) '不'[在此处输入图像描述][1]

检索 console.logged 的​​对象

控制台错误


deleteDoc需要一个DocumentReference。你正在传递的是DocumentSnapshot。如果你使用deleteDoc(docRef),您不应该收到此错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Firebase 错误:TypeError:无法使用“in”运算符在未定义中搜索“_delegate” 的相关文章

  • 在版本 4.4.6 中禁用 ckeditor 上下文菜单

    我在 Rails4 项目中使用 ckeditor 我尝试了 ckeditor gem 和 ckeditor rails gem 来提供 ckeditor 库 这里有多个帖子 人们希望删除 ckeditor 上下文菜单 以便可以显示本机浏览器
  • 从 React Native Js 代码调用 Android Native UI 组件方法

    我创建了一个 CustomView SignatureView java 它扩展了 LinearLayout 以捕获 Android Native 中的签名 并创建了SignatureCapturePackage java和Signatur
  • GeoFire Swift 3 - 保存和更新坐标

    我正在尝试使用 GeoFire 将坐标存储到 Firebase 数据库中 我不确定如何更新新坐标 因为它们每秒都会更改 更新 随着childByAutoId 它正在为每辆自行车生成一个新的唯一 ID 如何引用这个唯一的自行车 ID 例如 用
  • 本地推送通知到在应用程序内运行 JS 代码的 Win8 Live Tile

    我正在尝试将更新发送到我的应用程序的磁贴 当应用程序运行时 这可以正常工作 例如 当用户单击按钮时 我可以轻松地将磁贴更新通知发送到磁贴 我无法解决的是当应用程序无法运行时如何更新磁贴 我找到的唯一选择是使用以下命令从远程 Web 服务器拉
  • React 中的 Reconciliation 详解

    我是 React JS 的新手 谁能准确解释和解是如何运作的 我尝试从 React 官方网站上理解它 但没有得到它 我是这样理解的 您会同意 React 使用组件使事情变得简单且更快 通过 JSX 我们可以让用户定义的组件变得更容易 一天结
  • 如何使用 Greasemonkey 监视静态 HTML 页面的更改?使用哈希?

    我希望我的 Greasemonkey 脚本仅在其访问的静态页面具有与以前完全相同的内容时运行 现在我可以设置一个包含该页面哈希的变量 我正在寻找一种动态散列页面的方法 以便我可以将我的散列与生成的散列进行比较 关于如何即时实现散列的任何想法
  • React Router v4 不渲染组件

    React Router v4 渲染组件存在问题 在应用程序初始加载时 它将呈现与 URL 相对应的正确组件 但是 任何后续的组件Link单击不会呈现所需的组件 图书馆 反应路由器 4 2 2 https reacttraining com
  • JavaScript推送函数中的动态变量

    我在 JavaScript 中使用推送功能 var chartData for var i 0 i lt 3 i chartData push date new Date year s mon s date s hr s min s sec
  • IE 中的 XPath 查询使用从零开始的索引,但 W3C 规范是从一开始的。我应该如何处理差异?

    问题 我正在转换目前仅适用于 Internet Explorer 的相对较大的 Javascript 代码 以便使其也适用于其他浏览器 由于代码广泛使用 XPath 我们做了一些兼容性功能以使事情变得更容易 function selectN
  • 将 Firebase 云消息传递与 Windows 应用程序结合使用

    我在 Android 和 iOS 应用程序中使用 Firebase Cloud Messaging 但是我还有此应用程序的 Windows Mac OS 版本 我想保留相同的逻辑 我知道 Firebase Cloud Messaging 可
  • 为 Node.js 客户端应用程序保留 Firebase 用户

    我正在使用 Firebase 构建 Node js 命令行界面 CLI 用于与后端进行身份验证 我想避免让用户每次运行命令时都输入密码 相反 我想实现一个 登录 流程 将凭证保留到文件系统 该凭证可用于后续的无密码身份验证 直到用户 注销
  • 如何从 Chrome React Dev Tools 打开 VS code 中的组件文件?

    是否可以右键单击 React Dev 工具下可见的组件 然后单击 在 IDE 中显示 从而在 VSCode 中打开该文件 这将是有益的 因为我不必去寻找该组件 我经常想在 VS Code 中查看某个组件的源代码 但由于组件的模块化复用 代码
  • Vaadin 12 将对象传递给 JavaScript 函数:无法对类进行编码

    Vaadin 12 Kotlin 项目 In my myPage html我有JavaScript myObject redirectToCheckout sessionId 1111 2222 所以我需要调用javaScript函数red
  • 使用 Javascript 设置 cookie [重复]

    这个问题在这里已经有答案了 我正在尝试构建我的第一个移动应用程序 它需要连接到我的 mysql 数据库并使用 json 返回数据 这很好 目前我有一个登录系统 一旦确定用户名和密码存在 它就会返回一条成功消息 对于下一步 我想在我的页面上使
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • 使用javascript动态更新css内容

    需要将 css 更新为动态值 我不确定最好的方法是什么 div style zoom 1 div 缩放级别将根据窗口大小调整触发 应用程序将相应缩放 我将此应用程序加载到 cordova 中并让它在 iPAD 中运行 然后我意识到需要使用
  • Highcharts jQuery 渲染问题 - 所有浏览器

    我在尝试使用构建堆积柱形图时遇到了一个奇怪的问题高图表 http www highcharts com 当图表呈现时 在您调整浏览器大小之前 不会显示列无论如何 导致图表重绘 我认为 图表的其余部分显示 轴 标题等 但不显示列本身 我在 I
  • 使用 next.js 进行服务器端渲染与传统 SSR

    我非常习惯 SSR 意味着页面得到完全刷新并从服务器接收完整 HTML 的方法 其中根据后端堆栈使用 razor pub other 进行渲染 因此 每次用户单击导航链接时 它只会向服务器发送请求 整个页面将刷新 接收新的 HTML 这就是
  • 在 iOS 7 Safari 中,如何区分通过边缘滑动与后退/前进按钮的 popstate 事件?

    在 iOS 7 Safari 中 现在有两种后退 前进导航方式 使用底部的传统后退 前进按钮箭头或从屏幕边缘滑动 我正在使用动画在 ajax 应用程序中的页面之间进行转换 但如果用户通过边缘滑动进行导航 我不想触发该转换 因为这本身就是一个
  • 如何通过索引访问 JSON 对象中的字段

    我知道这不是最好的方法 但我别无选择 我必须通过索引访问 JSONObject 中的项目 访问对象的标准方法是只写this objectName or this objectName 我还找到了一种获取 json 对象内所有字段的方法 fo

随机推荐

  • 我应该使用哪种依赖注入工具? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 Spring 按需创建 Bean

    我想在启动后以工厂模式创建一些 spring beans 例如 我经常有一些工作要做 并且需要创建一个任务 bean 它可能依赖于其他单例 spring bean 并执行它 可能有多个工作要同时执行 因此每个任务 bean 都需要是独立的
  • 第一个 DropDownList 更改后如何从数据库加载第二个 DropDown 列表

    我正在构建一个网络应用程序 在某些时候 用户需要将数据输入到表单中 该表单有几个文本字段和DropDownLists 其中一个 DDL 依赖于其先前的 DDL 发生的情况是 当用户从第一个 DDL 中选择一个值时 第二个 DDL 应该从数据
  • 预约调度算法(N个人,N个忙闲时段,约束-满足)

    问题陈述 我们有一位雇主想要面试 N 个人 因此安排了 N 个面试时段 每个人都有一个空闲 忙碌的时间表 给出一个算法 如果可能的话 将 N 个人安排到 N 个位置 如果不可能 则返回一个标志 错误 等 最快的运行时复杂度是多少 到目前为止
  • 玩!框架 - 处理 POST 请求

    这是处理登录 POST 请求的路由 POST login submit controllers Users loginSubmit user String password String 这是login scala html
  • 比较 2 个不同行和列之间的日期

    我在弄清楚这一点时遇到问题 这是一个示例表 我需要能够找到的是对于给定的客户 ID 和 Part ID Discontinue Date 大于下一行的 effective Date 的任何记录 这是一个客户定价表 因此第 53 行的 Dis
  • 有没有办法在 Spring XML 中指定默认属性值?

    我们正在使用一个属性占位符配置器在 Spring 配置中使用 java 属性 详细信息在这里 http static springsource org spring docs 2 5 x reference beans html beans
  • 使用 WinHTTP 和 Excel 配置代理

    我正在使用 WinHTTP 在 Excel VBA 宏中执行 GET 请求 但是 如果我尝试从具有代理的网络中的计算机发出请求 则它不起作用 如果我手动配置它 它可以工作 但我认为使用我正在开发的工具的人不会知道他们的代理服务器 有没有办法
  • 为什么 _.escape 会修改 Underscore.js 中的 / 字符?

    我正在浏览下划线 js api http underscorejs org escape我注意到 escape逃脱 lt gt and 人物 让我惊讶的是逃跑 有没有理由逃避 我不知道的角色 EDIT 好吧 看来是推荐的OWASP http
  • MVC 3 实体框架中从多对多链接表添加关系时发生主键冲突

    我已经阅读了这里的许多问题 这些问题乍一看似乎有类似的问题 但看起来并不完全相同 如果这个问题在某个地方得到了回答 我深表歉意 但就像我说的 我已经阅读了很多内容 但找不到答案 我正在使用实体框架和 MVC 3 我正在尝试向实体框架中的产品
  • JavaScript:V8 问题:小整数是否被合并?

    正在看这个V8设计文档 https docs google com document d 11T2CRex9hXxoJwbYqVQ32yIPMh0uouUZLdyrtmMoL44 edit 其中有一个部分用于Constant Pool En
  • CoreBluetooth配对反馈/回调

    感觉好像我在这里遗漏了一些东西 但是我如何获得有关密码保护的外围设备配对失败还是成功的反馈 当我连接受密码保护的外围设备时 会弹出密码 UIAlertView 并且外围设备会立即连接 调用 didConnectPeripheral 并断开连
  • MS Sql:条件 ORDER BY ASC/DESC 问题

    我想使查询中的排序成为有条件的 因此如果它满足条件 则应按降序排序 例如 SELECT FROM Data ORDER BY SortOrder CASE WHEN Direction 1 THEN DESC END 不要改变ASC or
  • 使用 NLTK 和 WordNet;如何将动词简单时态转换为现在时、过去时或过去分词形式?

    使用 NLTK 和WordNet https en wikipedia org wiki WordNet 如何将动词简单时态转换为现在时 过去时或过去分词形式 例如 我想编写一个函数 它会给我预期形式的动词 如下所示 v go presen
  • Docker:使用 dockerfile 在 Windows 容器上安装 chrome

    我正在尝试在我的 Windows 容器上安装 Chrome 我已经使用 dockerfile 创建了我的 docker 映像 并且我想使用此 dockerfile 安装 chrome 我尝试过使用以下命令 RUN apt get updat
  • 我可以在运行 VS 单元测试时进行调试吗?

    我想对使用自定义事件的用户组件进行单元测试 当不使用 VS 单元测试框架 debug assert 执行此操作时成功 当使用 VS 单元测试框架执行相同的操作时 断言失败 这是不合逻辑的 所以我想在使用 VS 框架进行单元测试时进行调试 但
  • C++ 后端和 C# 前端?

    我有一个项目 在该项目中 我必须每秒处理 100 条 如果不是 1000 条 消息 并相应地在图表上处理 绘制这些数据 用户将搜索一组数据 其中将实时绘制图表 而不必在图表上绘制数千个值 我无法理解使用 DLL 在 C 中进行大量消息处理
  • Android Studio 无法识别我的设备

    问题就在这里 我想在我的设备 Samsung Galaxy Ace 2 上运行 Android Studio 应用程序 但对我来说没有任何作用 告诉我我错过了什么 1 USB调试打开 2 ADB驱动程序已安装 在设备管理器中我可以看到And
  • 将视图或窗口添加到 MainWindow

    我在一些我无法理解的基本概念上遇到了困难 我希望有人能为我解决一些问题 因为我没有找到可以解释这一点的资源 或者也许 它在明亮的地方 但我只是看不到它 到目前为止的理解 主窗口包含菜单 因此或多或少是必要的 这info plist持有笔尖
  • Firebase 错误:TypeError:无法使用“in”运算符在未定义中搜索“_delegate”

    我是 firebase 的新手 过去两天在查询和删除集合中的文档时遇到了一些困难 具体来说 每次启动服务器时 我都会尝试清除公司虚拟数据的整个集合 然后再循环虚拟数据并将其写入集合 以防止重复 我已经能够将我的公司虚拟数据写入我的 公司 集