Why do I keep getting this error when trying to create a firebase counter? I am literally following the google firebase docs line for line.
this is the create counter function
func createCounter(ref: DocumentReference, numShards: Int) {
ref.setData(["numShards": numShards]){ (err) in
for i in 0...numShards {
ref.collection("shards").document(String(i)).setData(["count": 0])
}
}
}
and this is how I am trying to use it
Button("In there"){createCounter(ref: ref.document("Posts"), numShards: 0); incrementCounter(ref: ref.document("Posts"), numShards: 0); getCount(ref: ref.document("Posts"))
}
I also keep getting this "Return from initializer without initializing all stored properties" error when I have this.
struct PostRow: View {
var post: PostModel
@ObservedObject var postData : PostViewModel
let db = Firestore.firestore()
let uid = Auth.auth().currentUser!.uid
let numShards: Int
let count: Int
init(numShards: Int, count: Int) {
self.numShards = numShards
self.count = count
}
2
Answers
Use this code in the
init(){}
of SwiftUI View.you are getting the error because you are not initialising all your variables in "init(…)". Try something like this: