Инициализация объекта невозможна - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь настроить простой объект User в своем приложении, когда я пытаюсь инициализировать объект или получить доступ к его параметрам, я не могу это сделать, обычно он выдает следующую ошибку:

Аргумент передан в вызов, который не принимает параметров

Это похоже на проблему новичка, но я не знаю, почему это происходит.

Вот код, который я использую для объекта:

import Foundation
import Firebase

class User {

  var username: String
  var image: String
  var email: String

  init(username: String, image: String, email: String) {
       self.username = username
       self.image = image
       self.email = email
  }

   func toAny() -> [String: Any] {
      return ["username": username, "image": image, "email": email]
   }
}

и тогда я представляю, что я должен быть в состоянии сделать:

let user = User(username: "usr", image: "img", email: "mail")

, но это не работает, это выдает ошибку, упомянутую выше

Так что я попытался создать экземпляр объекта в области видимости:

let user: User?

, а затем

user.username = "usr"

, но это тоже не сработало ...

Я работал с Свифт-приложения уже более 2 лет, и у меня до сих пор иногда возникают проблемы с самыми простыми вещами, но, поскольку я не могу найти хороших ссылок в Интернете, я решил попытать счастья здесь. Хотя я согласен, что это глупый вопрос, мне бы хотелось объяснить, что я делаю неправильно и как никогда больше не сталкиваться с этой проблемой.

enter image description here

1 Ответ

1 голос
/ 04 мая 2020

Это связано с неоднозначностью между User, созданным вами, и классом User в FirebaseAuth Framework

Попробуйте переименовать ваш класс User в нечто более конкретное c для вашего использования- дело. Доступ к его переменным не должен вызывать проблем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...