【发布时间】:2022-01-10 07:38:55
【问题描述】:
我在 SwiftUI 中使用了以下代码:
import Foundation
public struct Trigger {
public var value = false
public mutating func toggle() {
value = true
let responseDate = Date().advanced(by: 3)
OperationQueue.main.schedule(after: .init(responseDate)) {
moveBack()
}
}
private mutating func moveBack() {
value = false
}
}
但是,我收到一个错误:
转义闭包捕获变异的“自我”参数
我知道将结构更改为类可以解决这个问题,但是有没有办法在结构中的转义闭包中实际捕获变异的自我?
【问题讨论】:
-
没有。视图模型应该几乎总是类,如果你想改变模型,它们几乎必须是类
标签: ios swift class struct closures