我正在尝试创建一个用属性初始化的单例。。我知道默认情况下可以初始化:

class ApiSharedHelper {
    var someValue:String

    static let sharedInstance : ApiSharedHelper = {
        let instance = ApiSharedHelper()
        return instance
    }()


ApiSharedHelper.sharedInstance...

我只需要调用sharedInstance,它就会调用构造函数。在传递someValue字符串的值以初始化值时,如何调用共享实例?

最佳答案

class APIManager {

    class var shared :APIManager {
        struct Singleton {
            static let instance = APIManager()
        }
        return Singleton.instance
    }

    func login(username: String, password: String, success:@escaping (LoginModel?)->()) { ... }

你可以这样称呼它:
APIManager.shared.login(username: txtUsername.text ?? "", password: txtPassword.text ?? "") { (response) in
            print(response ?? "")
    }

07-24 09:36
查看更多