3

正如Apple在此视频中解释的那样, 我正在尝试将新的Combine框架与通知中心一起使用: https ://developer.apple.com/videos/play/wwdc2019/721/

您可以在幻灯片 21 中找到它。

看来我的项目没有读取Combine framework apis。

import Combine
import Foundation

let trickNamePublisher = NotificationCenter.default.publisher(for: .newTrickDownloaded)

我收到了这个错误:

“NotificationCenter”类型的值没有成员“发布者”

4

2 回答 2

5

显然,在 Xcode 11 beta 中似乎存在这个已知问题:

组合框架的 Foundation 集成不可用。 以下 Foundation 和 Grand Central Dispatch 与 Combine 的集成不可用:KeyValueObserving、NotificationCenter、RunLoop、OperationQueue、Timer、URLSession、DispatchQueue、JSONEncoder、JSONDecoder、PropertyListEncoder、PropertyListDecoder 和 @Published 属性包装器。(51241500)

链接:https ://developer.apple.com/documentation/xcode_release_notes/xcode_11_beta_release_notes/

事实上,他们在那次演示中并没有使用 Xcode,而只是在幻灯片上编写代码

于 2019-06-08T09:46:48.377 回答
3

此问题已在Xcode 11 beta 2中得到修复。来自Xcode 11 Beta 2 发行说明

Combine 框架的 Foundation 集成现在可用。 以下 Foundation 和 Grand Central Dispatch 与 Combine 的集成可用:KeyValueObserving、NotificationCenter、RunLoop、OperationQueue、Timer、URLSession、DispatchQueue、JSONEncoder、JSONDecoder、PropertyListEncoder、PropertyListDecoder 和 @Published 属性包装器。(51241500)

于 2019-06-18T23:46:44.560 回答