我的SwiftUI视图上有一个绑定

@Binding var pinValue: String

我想在每次更改值时获得更新.我在下面试了一下,就像我在publisher上做的那样,但我会出错,因为它不是publisher.

.onReceive($pinValue, perform: { output in
            print(output)
        })

我也试着访问$pinValue.publisher,但.onReceive块不起作用.

如何在每次更改pinValue的值时获得更新?

推荐答案

改用

.onChange(of: pinValue) { output in
  print(output)
}

Swift相关问答推荐

是否有一个Kotlin等价的Swift s @ AddendableReport注释'

体积单位从夸脱转换为杯似乎关闭了

为什么第二项任务不在第一项任务完成之前开始?(并发队列)

SWIFT Vapor控制台应用程序-操作无法完成.权限被拒绝

SWIFT异步/等待,多个监听程序

String.Index encodedOffset已弃用,但建议的替代方案不起作用

如何偏移HStack中的视图,但仍然约束框架以与偏移匹配?

';NSInternal不一致异常';,原因:';可见导航栏Xcode 15.0 Crash请求布局

TimeZone 背后的目的

按数组大小进行类型判断?

使用UICollectionViewFlowLayout创建水平的UICollectionView,并同时将单元格对齐到左边和右边的能力

为什么无法在 Swift 中使用AVFoundation扫描 QRCode

如何在 SwiftUI 中为过渡动画保持相同的标识

是否可以使任何协议符合 Codable?

Xcode:方法参数的代码完成

如何从元组数组创建字典?

try 在解除分配时加载视图控制器的视图... UIAlertController

Swift 3:小数到 Int

为 UIImagePicker 设置委托返回错误

iOS:如何检测用户是否订阅了自动更新订阅