【发布时间】:2019-06-05 14:15:51
【问题描述】:
我正在检查 Apple 的新框架 Combine。我创建了一个 Playground,在 macOS Mojave 10.14.5 和 Xcode 11.0 beta (11M336w) 中运行它。
这是我的代码:
import Combine
struct Article: Identifiable {
var id: Int
var title: String
}
final class Data: BindableObject {
let didChange = PassthroughSubject<Data, Never>()
var showFavouriteOnly = false {
didSet {
didChange.send(self)
}
}
var articles: [Article] = [.init(id: 1, title: "WWDC 2018"),
.init(id: 2, title: "WWDC 2019")] {
didSet {
didChange.send(self)
}
}
}
但它失败并显示日志:
错误:无法查找符号: Combine.PassthroughSubject.send(A) -> ()
我做错了什么?
【问题讨论】:
-
您必须运行 macOS 10.15。
-
您可以在右侧的系统要求窗格中看到,需要
macOS 10.15+。 -
这是一个公平的问题,它也不适用于 Catalina。
-
@MwcsMac 我有点困惑,为什么具有相同 macOS 10.15+ 要求的 SwiftUI 在 Xcode 11 的操场上工作,而 Combine 失败了。
-
看起来 Xcode 11 beta 2 修复了这个问题。
标签: swift swift-playground combine