在代码“使用未解析的标识符 Firestore”中出现错误,但程序运行良好 SwiftUI

Posted

技术标签:

【中文标题】在代码“使用未解析的标识符 Firestore”中出现错误,但程序运行良好 SwiftUI【英文标题】:Getting error in code 'Use of unresolved identifier Firestore', but program works fine SwiftUI 【发布时间】:2020-09-02 12:18:31 【问题描述】:

我正在寻找答案,为什么在代码中我收到错误 Use of unresolved identifier 'Firestore'。我导入了一个 Firebase,程序运行良好,数据保存正确,但无论在哪里使用,我仍然会出错

let db = Firestore.firestore().

以前只有在我清理build文件夹时才出现这个问题。

编辑

我忘记添加 Podfile 中有一个条目 pod 'Firebase / Firestore' 并且我更新了 pod

【问题讨论】:

【参考方案1】:

我找到了解决方案,问题出在import Firebase。需要改用import FirebaseFirestore

【讨论】:

【参考方案2】:

使用 Firebase 的 ios 项目不再需要 Firebase/Core 库。因此,对于 CocoaPods 用户,请在项目的下一个 pod 文件中省略 pod Firebase/Core

显然有一个错误使得import Firebase 似乎在 Swift 文件中已被弃用,但现在不再是这种情况(根据评论员的说法)。无论如何,每个 Firebase 服务都可以(也许现在应该)手动导入:

import FirebaseFirestore
import FirebaseAuth
import FirebaseMessaging
...

但是,要配置 Firebase 本身(在 App Delegate 中),我们必须(或至少可以肯定)导入 FirebaseCore

import FirebaseCore

应该注意的是,任何其他切换这些 pod 和导入的错误行为都可以通过清理项目的构建文件夹和派生数据文件夹来修复。

【讨论】:

import Firebase 未被弃用。 6.28.0 中引入了一个错误,暴露了 Xcode 构建竞争条件。该错误已在 6.31.1 中修复。 @PaulBeusterien 该错误将解释为什么它在我的项目中似乎已弃用。在什么情况下我们需要或可以导入 Firebase? Firebase 模块很方便,无需显式导入任何其他 Firebase 模块。

以上是关于在代码“使用未解析的标识符 Firestore”中出现错误,但程序运行良好 SwiftUI的主要内容,如果未能解决你的问题,请参考以下文章

如何在web.config文件中添加一些代码,因为此代码需要在代码隐藏文件中反复出现

java中静态代码块(static{...}),局部代码块(方法中{...}),构造代码块(类中{...})区别。

在 Visual Studio 代码终端中运行 JavaScript 代码,与在浏览器控制台中运行的相同

PHP代码没有被执行,但代码显示在浏览器源代码中

PHP代码没有被执行,但代码显示在浏览器源代码中

PHP代码没有被执行,但代码显示在浏览器源代码中