Неоднозначное использование logInWithUsernameInBackground - PullRequest
0 голосов
/ 02 октября 2019

Привет, пытаюсь заставить Back4App loginInWithUserName работать с SwiftUI и продолжать получать следующую ошибку

Неоднозначное использование logInWithUsernameInBackground

на PFUser.logInWithUsernameInBackground($userName, password: $passWord)

struct ContentView: View {

@State var userName: String = ""
@State var passWord: String = ""
@State var authDidFail: Bool = false
@State var authDidWork: Bool = false
@State var editingMode: Bool = false

let storedUserName = "not your father"
let storedPassword = "this is not the password"



var body: some View {
    ZStack{
        VStack{
            Text("WIK?")
                .font(.largeTitle)
                .fontWeight(.semibold)
                .padding(.bottom, 20)
            Image("WIK")
                .clipShape(Circle())
            UserNameTextField(userName: $userName, editingMode: $editingMode)
            PasswordSecureField(passWord: $passWord)

            if authDidFail {
                Text("Information you entered was incorrect.  Try again.")
                    .offset(y: -10)
                    .foregroundColor(.red)
            }

            Button(action: {

                //need to check against back4app and set current user variable
                PFUser.logInWithUsernameInBackground($userName, password: $passWord){
                    (user: PFUser?, error: NSError?) -> Void in
                    if user != nil{
                        //worked
                    }else {
                        //error
                    }

                }


                if self.userName == self.storedUserName && self.passWord == self.storedPassword {
                    self.authDidWork = true
                } else {
                    self.authDidFail = true
                }
            }){
                LoginButtonContent()
            }
        }
        //vStack padding
        .padding()
        if authDidWork {
            Text("Log in worked")
            .font(.headline)
            .frame(width: 250, height: 20)
            .background(Color.green)
            .cornerRadius(20.0)
            .foregroundColor(.white)
            .animation(Animation.default)
        }
    }
    //ZStack
        .offset(y: editingMode ? -150 :0)

}

}

Пробовал смотреть на $username и $password Строки для передачи в виде Object[""]: String

Также пробовал строковые значения self.userName и self.passWord

и пробовал строковые значения userName и passWord

Ответы [ 2 ]

0 голосов
/ 02 октября 2019

найдено, где ошибка. Сгенерированный код SWIFT API для Back4App, как gujci, упомянул о неправильной функции.
Да, поймите. Дай им знать.

0 голосов
/ 02 октября 2019

Вам нужно использовать String значения, а не Binding<String>:

PFUser.logInWithUsernameInBackground(userName, password: passWord)

...