我已经使用以下签名定义了一个函数:
public func loginUser(username: String) -> ReactiveCocoa.Signal<String, NSError>
我正在尝试调用方法toRACSignal
并将结果传递给loginUser
。
toRACSignal
的签名是:
func toRACSignal<T, E>(signal: ReactiveCocoa.Signal<T, E>) -> RACSignal
func toRACSignal<T, E>(signal: ReactiveCocoa.Signal<T?, E>) -> RACSignal
我的尝试看起来像这样:
public func RACLoginUser(username: String) -> RACSignal {
let signal = loginUser(username)
return toRACSignal(signal)
}
但这导致错误说:
错误:(33,12)无法找到过载到RACSignal&#39;接受类型&#39;(信号)&#39;
的参数列表
我做错了什么?
答案 0 :(得分:1)
我只是想通了。问题是String不是Swift中的对象。替换为NSString(或任何其他对象),它可以工作。