ios - firebase childByAutoId.key 是可选的
问题描述
我正在使用 Firebase 和 Swift。我想使用 Firebase 函数 childByAutoId.key 但它不起作用。我在做什么错?.key 是可选的...通常它必须是非可选的!感谢帮助!
import Foundation
import FirebaseDatabase
class AddWatchlistAPI {
var REF_WATCHLIST = Database.database().reference().child("watchlists")
static var shared: AddWatchlistAPI = AddWatchlistAPI()
private init() {
}
//add a watchlist to the user
func addWatchlistToDatabase(watchlistName: String, onSuccess: @escaping () -> Void) {
let watchlistRef = REF_WATCHLIST
let watchlistId = watchlistRef.childByAutoId().key //.key is optional ???? --> Normally it isn t optional
let newWatchlistRef = watchlistRef.child(watchlistId)//here the error is warning
}
}
解决方案
尝试如下
1-let watchlistId:String = (watchlistRef.childByAutoId().key)!
或者
2-let watchlistId:String = watchlistRef.childByAutoId().key ?? ""
或者
3-
var ref: DatabaseReference!
ref = Database.database().reference()
let llave = self.ref.child(name_of_child).childByAutoId().key
推荐阅读
- c - 从环形缓冲区索引计算“经过”元素的数量
- java - IntelliJ IDEA 是否支持在代码中对 Java 注释(组)进行分组和高亮显示?
- android - 加密 android 中的单个 SQLite 表,而不是整个数据库
- javascript - 从 yyyy-mm-dd 获取时间戳
- android - 无法隐藏
项目编程 - mysql - 来自具有单个记录的查询的多个结果
- php - 如何执行 getHead 函数
- c - 从 c 文件中读取行并将 int 放入数组中(上一行有一个整数,该整数是下一行具有不同整数的大小
- r - 在 (r)yacas 中象征性地计算 Hessian
- python - numpy:对可变大小数组块中的值进行有效求和