Cen*_*enk 5 swift swift5 swiftui
我有一个@State
变量和异步函数。我想每当该变量发生更改时调用异步函数。
基本上,我正在尝试做的事情
VStack {
Text("")
}
.onChange(of: var) { newValue in
await asyncFunction()
}
Run Code Online (Sandbox Code Playgroud)
但这给了我以下错误
无法将“(Int) async -> ()”类型的函数传递给需要同步函数类型的参数
不能在同步函数中直接调用异步函数。您需要将您的调用包装起来Task
,否则您需要将您的函数声明为async
. 现在,在这种情况下,您无法执行onChange
操作async
,因此您需要用 来结束您的呼叫Task
。
Task {
await asyncFunction()
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2799 次 |
最近记录: |