gpt4 book ai didi

swift - 实例成员不能用于类型 - Firebase

转载 作者:行者123 更新时间:2023-11-30 11:24:02 25 4
gpt4 key购买 nike

我是 Swift 新手,正在学习有关如何使用 Xcode 和 Firebase 创建社交媒体应用的教程。但是,我收到了这个错误:

Instance member 'database' cannot be used on type 'DatabaseReference'

这是我的代码:

import Foundation
import Firebase

class Post {

private var _username: String!
private var _userImg: String!
private var _postImg: String!
private var _likes: Int!
private var _postKey: String!
private var _postRef: DatabaseReference

var username: String {

return _userImg
}

var postImg: String {
get {
return _postImg
}set {
_postImg = newValue
}
}

var likes: Int {
return _likes
}

var postKey: String {
return _postKey
}


init(imgUrl: String, likes: Int, username: String, userImg: String) {
_likes = likes
_postImg = postImg
_username = username
_userImg = userImg
}

init(postKey: String, postData: Dictionary<String, AnyObject>) {
_postKey = postKey

if let username = postData["username"] as? String {
_username = username
}

if let userImg = postData["userImg"] as? String{
_userImg = userImg
}

if let postImage = postData["imageUrl"] as? String {
_postImg = postImage
}

if let likes = postData["likes"] as? Int {
_likes = likes
}

_postRef = DatabaseReference.database().reference().child("posts")
}
}

我在倒数第三行收到错误:

_postRef = DatabaseReference.database().reference().child("posts")

最佳答案

database 属性是一个实例类型,这意味着它必须由 DatabaseReference 的实例引用。您对DatabaseReference.database 的调用正在访问类或静态类型。您需要更改对 DatabaseReference 实例的调用。

据推测,您需要初始化 DatabaseReference 的实例。我不知道 Firebase 是否知道这样做需要什么,但这会解决您的问题。

本质上:

let databaseReference = DatabaseReference() // Likely won't work, but some init method here will
_postRef = databaseReference.database()... // Whatever you need here

关于swift - 实例成员不能用于类型 - Firebase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50957464/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com