【问题标题】:Value of type 'UIButton' has no member 'reactive''UIButton' 类型的值没有成员 'reactive'
【发布时间】:2017-08-30 09:26:17
【问题描述】:

我想使用 ReactiveSwift。

  1. 播客文件

pod 'ReactiveCocoa', '~> 6.0'

  1. $ pod install

ViewController.swift:

import UIKit
import ReactiveSwift

class ViewController: UIViewController {
    @IBOutlet fileprivate weak var button: UIButton!

    override func viewDidLoad() {
        button.reactive.xxx { ... }
    }
}

我只有这个错误,所以当我注释掉button.reactive.xxx { ... }时我可以运行。

谢谢你。

【问题讨论】:

  • 反应式是如何工作的?它是否在UIButton 上有一个extension 来添加reactive 成员,或者您是否应该使用确实 有那个属性吗?
  • 顺便说一句,可可豆荚部分似乎正在工作,否则编译器会抱怨import ReactiveSwift 行。
  • 我把import ReactiveSwift改成import ReactiveCocoa解决了这个问题!但示例代码似乎适用于import ReactiveSwift。我的项目有什么问题吗?
  • 所以我猜它 isextension on UIButton 是在 ReactiveCocoa 中定义的(not ReactiveSwift )
  • 我明白了。谢谢!

标签: ios swift reactive-cocoa reactive-swift


【解决方案1】:

正如@NicolasMiari 所建议的那样——Reactive Cocoa 被分成几个部分(无论如何从 5.0 版开始)。

Reactive Swift 包含核心原语(SignalSignalProducerPropertyAction)和运算符的实现。值得注意的是,这是独立于平台的。

Reactive Cocoa 构建在 Reactive Swift 之上,并通过 .reactive 属性为 iOS/macOS 添加了 UIKitAppKit 特定扩展。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-03
    • 2023-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2016-03-11
    相关资源
    最近更新 更多