我跟随WWDC 2019“实践中的组合”视频,得到以下错误
Cannot find 'CombineLatest' in scope我是在用Xcode12制作的操场上做的
import SwiftUI
import Combine
class Stuff {
@Published var password: String = ""
@Published var passwordAgain: String = ""
var validatedPassword: AnyPublisher<String?, Never> {
// wtf? "Cannot find 'CombineLatest' in scope"
return CombineLatest($password, $passwordAgain) { password, passwordAgain in
guard password == passwordAgain, password.count > 8 else { return nil }
return password
}
.map { $0 == "password1" ? nil : $0 }
.eraseToAnyPublisher()
}
}自2019年以来,API有变化吗?因为看起来
CombineLatest($password, $passwordAgain) -> $password.combineLatest($passwordAgain) 这是真的吗?有没有人能找到任何正式的文档来证明这是真的,为什么?
发布于 2020-12-25 05:35:13
它嵌套在enum Publishers下,所以您可以像这样访问它:
Publishers.CombineLatest($password, $passwordAgain)或者,您可以将其用作运算符,这是一种更常见的方式:
$password.combineLatest($passwordAgain)https://stackoverflow.com/questions/65443391
复制相似问题