【发布时间】:2020-04-03 08:12:10
【问题描述】:
我找到了这个答案以再次找回 didset:
extension Binding {
/// Execute block when value is changed.
///
/// Example:
///
/// Slider(value: $amount.didSet { print($0) }, in: 0...10)
func didSet(execute: @escaping (Value) ->Void) -> Binding {
return Binding(
get: {
return self.wrappedValue
},
set: {
execute($0)
self.wrappedValue = $0
}
)
}
}
现在我尝试了与已发布相同的方法,但出现错误并且不知道如何修复。 错误是:表达式类型不明确,没有更多上下文
@available(iOS 13.0, *)
extension Published {
/// Execute block when value is changed.
///
/// Example:
///
/// Slider(value: $amount.didSet { print($0) }, in: 0...10)
func didSet(execute: @escaping (Value) ->Void) -> Published<Any> {
return Published ( // error here : Type of expression is ambiguous without more contex`enter code here`
get: {
return self.wrappedValue
},
set: {
execute($0)
self.wrappedValue = $0
}
)
}
}
【问题讨论】:
-
Published没有这样的构造函数。
标签: swiftui