gpt4 book ai didi

在 struct init 期间无法填充 Swift 属性

转载 作者:行者123 更新时间:2023-12-04 10:05:59 25 4
gpt4 key购买 nike

我有以下代码。

出于某种原因,当我初始化 VerifyPhoneView 类时,它会正确打印验证 ID,但 self.verificationID 仍然是空字符串。

什么可能导致这种情况?

struct VerifyPhoneView: View {

private var phoneNumber: String
@State private var verificationID: String = ""

init(phoneNumber: String, verificationID: String) {
self.phoneNumber = phoneNumber

print ("Initializer, verificationID: " + verificationID)

self.verificationID = verificationID
print ("Initializer, self.verificationID: " + self.verificationID)
}
}

最佳答案

在这种情况下,不需要状态的默认值。这是一个解决方案:

struct VerifyPhoneView: View {

private var phoneNumber: String
@State private var verificationID: String // << here !!
...
init(phoneNumber: String, verificationID: String) {
self.phoneNumber = phoneNumber

print ("Initializer, verificationID: " + verificationID)

_verificationID = State(initialValue: verificationID) // << here !!
print ("Initializer, self.verificationID: " + self.verificationID)
}

关于在 struct init 期间无法填充 Swift 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61585026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com