使用未声明的类型 'SignalProducerType

Use of undeclared type 'SignalProducerType

我是 ReactiveCocoa 和 ReactiveSwift 的新手, 在更新代码后,我的任务是将代码从 Swift2 更新到 Swift4 我卡在了一个点,我遇到了 "Use of undeclared type 'SignalProducerType'" not found 的错误,我们有什么替代方法吗? 请帮我解决这个问题 我正在使用 ReactiveCocoa 7.1.0

extension SignalProducerType where Value == HTTPOperationResult,Error == APIError {

    func serializeToJSON() -> SignalProducer {
        return attemptMap { result in
            guard let data = result.data else {
                return .failure(APIError.parseError("invalid json"))
            }
            guard let JSON = try? JSONSerialization.jsonObject(with: data, options: []) else {
                return .failure(APIError.parseError("invalid json"))
            }
            return .success((result,JSON))
        }
    }
}

SignalProducerType 已不存在。它已重命名为 SignalProducerProtocol,但不再用于添加运算符。 This ought to just be an extension on SignalProducer itself:

All Signal and SignalProducer operators now belongs to the respective concrete types. (#304)

Custom operators should extend the concrete types directly. SignalProtocol and SignalProducerProtocol should be used only for constraining associated types.