首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在SecureField中设置提示符后不显示占位符

在SecureField中设置提示符后不显示占位符
EN

Stack Overflow用户
提问于 2022-03-03 03:22:31
回答 1查看 74关注 0票数 0

“我的安全”字段中的提示应该在用户不满足密码凭据时显示,在满足密码凭据时消失。

到目前为止,它是一个占位符。我只包括代码片段,因为我认为问题在下面的代码行中。

片段

代码语言:javascript
复制
@ObservedObject var userInformation = FormViewModel()

SecureField("Password", text: $userInformation.password,
                        prompt: Text(userInformation.passwordPrompt))
           
        }

class FormViewModel: ObservableObject {
    
    @Published var password = ""
  
    
    func isPasswordValid() -> Bool {
        let passwordTest = NSPredicate(format: "SELF MATCHES%@", "^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,15}$")
        return passwordTest.evaluate(with: password)
    }
  
    var isSignUpComplete: Bool {
        if !isPasswordValid() || !isEmailValid() || firstname == "" || lastname == "" {
            return false
        }
        return true
    }
    

    var passwordPrompt: String {
        if isPasswordValid(){
            return ""
        } else {
            return "Must be between 8 and 15 letters, containing at least one capital and one number"
        }
    }
}
EN

回答 1

Stack Overflow用户

发布于 2022-03-03 14:26:38

愚蠢的问题,有时你只是不知所措,忽略了一个简单的解决方案。为此,我只是在密码验证中添加了一个or语句,以检查密码是否也是空字符串。隐藏我的提示。

代码语言:javascript
复制
 var passwordPrompt: String {
        if isPasswordValid() || password == ""{
            return ""
        } else {
            return "Must be atleast"
        }
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71331766

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档