
Xcode报错:Return from initializer without initializing all stored properties,'self' used before all stored properties are initialized
我们自定义 init 方法,在 init 中直接赋值 @Binding 会失败,但是直接赋值给Binding类型的变量却正常,说明@Binding并不等同于Binding,使用Binding时要调用wrappedValue,有点麻烦,但是使用@Binding时init初始化方法又报错,怎么解决?
解决办法:
属性包装器默认生成的真实变量名是在名称前加下划线(_
),而且参数类型要改成Binding修饰。因此我们在赋值的时候直接赋值给真实的存储变量就可以了。
