【发布时间】:2018-02-01 10:46:54
【问题描述】:
我是一个名为 User.. 的结构模型,代码如下
struct User {
let userId: Double
}
extension User {
init(json: JSON) {
self.userId = json["userId"].double!
}
}
并且有普通的类,如下所示
class LoginTask<User>: Operation {
var userName: String
var password: String
init(username: String, password: String) {
self.userName = username
self.password = password
}
var request: Request {
return UserRequests.login(username: self.userName, password: self.password)
}
func exeute(in dispatcher: Dispatcher, completed: (User) -> Void) {
do {
do {
try dispatcher.execute(request: self.request, completion: { (response, error) in
if error == nil {
let user = User(json: response)
}
})
} catch {
}
}
}
}
操作是一个协议,其关联类型名为输出
现已上线
let user = User(json: response)
报错
非标称类型“用户”不支持显式初始化
我尝试制作 User.Type .. 但可能是我不完全理解这个概念或错误。
【问题讨论】:
-
尝试使用显式初始化:
let user = User.init(json: response) -
@MilanNosáľ 试过了,但它给出了(类型'用户'没有成员'init')
-
见杰里米的回答..