Никак не могу понять ошибку, с прошлого своего проекта скопировал аналогию, вроде все верно
https://stackoverflow.com/questions/24795035/swift-extra-argument-in-call Проверял все, вроде типы правильно указаны
Помогите решить ошибку
а где у вас
let user: UserModal
struct UserModal { //пример. может быть по другому
var uid: String
}
увидел толькo
let userId: String
Я делал по аналогии, не создавал структуру User, в первом проекте почему-то все верно работает
Не помогло, еще что удивительно, когда навожусь на user и перехожу “jump to defination”, иногда открывается вообще непонятный файл, а иногда и нормально показывается связь
Вы своим init Snapshot переопределили дефолтный инициализатор в структуре.
Попробуйте сделать так init?(snapshot: DataSnapshot)
И проверьте еще раз что он предложит для инициализации структуры.
тогда так: convenient init(snapshot: ...)
советую по памяти, лень запускать мак для проверки.
- проще было бы данный проект в гитхаб залить и дать ссылку. Можно было бы целиком скачать посмотреть и подправить
- вопрос на засыпку, вы знаете что такое
convenience
в конструкторах структур и классов?
вот рабочий пример
struct Person {
var name: String!
}
extension Person {
init(data: Data) {
self.init(name: "")
}
}
let person = Person(name: String)
let person2 = Person(data: Data)
да, просто перенесите ваш init в extension, только там нужно вызывать self.init, в который будете передавать значения для каждого свойства.
константа это из моего примера.