问题分析
报错代码:
struct Settings: View {
@EnvironmentObject var iapManager = IAPManager.shared
...
}
第一个报错:
Argument passed to call that takes no arguments
报错原因:@EnvironmentObject不能直接赋值,因为@EnvironmentObject 用于将已经注入到视图层次结构中的共享数据对象访问到子视图。
@EnvironmentObject var iapManager
因此,应该取消对@EnvironmentObject的赋值。
第二个报错:
Generic parameter 'ObjectType' could not be inferred
@EnvironmentObject需要明确对应的类型,因此应该在后面添加所属类型。
@EnvironmentObject var iapManager: IAPManager
以上就是这两个报错的解决方案。
相关文章
Swift通过 @EnvironmentObjec共享和传递数据:https://fangjunyu.com/2024/10/23/swift%e9%80%9a%e8%bf%87-environmentobjec%e5%85%b1%e4%ba%ab%e5%92%8c%e4%bc%a0%e9%80%92%e6%95%b0%e6%8d%ae/