我试图更新类“ var
CurrentStatus:status!”内的变量,状态是一个枚举。我有一个firebase函数,它将更新变量。变量在firebase函数内部获取更新,但不会在firebase函数外部更新变量
class signUpClass:UIViewController {
// check to see if form is empty
let ihelpController = UIViewController()
var CurrentStatus:status!
func signUp(var formArray: [String:String]) -> status{
var formStatus:status = ihelpController.checkIfFormIsEmpty(formArray)
if (formStatus == status.success){
//form is ok to process
// check DOB
//TODO: create date calculation function
let DateOfBirth:Int = 18
if DateOfBirth < 18 {
//user is not 18 they can not register
alertError("oops", message: "You must be 18 to register", comfirm: "Ok")
} else {
//Proceed with registration
let firebaseController = Firebase()
var email = "asdf@afd.com"
var password = "1234"
firebaseController.refPath("users").createUser(email, password: password, withValueCompletionBlock: {error, result in
if error != nil {
print("registration Error")
self.alertError("oops", message: "That email is registered already", comfirm: "OK")
} else {
let vc =
print("user can register")
firebaseController.firebaseRefUrl().authUser(email, password: password, withCompletionBlock:{
error, authdata in
if error != nil {
print("login Error")
}else{
let userId = firebaseController.firebaseRefUrl().authData.uid
formArray["userId"] = userId
firebaseController.refPath("users/\(userId)").updateChildValues(formArray)
print("user is register and can proceed to dashBoard")
//Proceed to dashboard
self.CurrentStatus = status.success
}
})
}
})
}
}
return CurrentStatus
}
同意杰伊的评论。您无法返回那样的状态,因为Firebases异步工作…我要做的是添加一个闭包参数,该参数在完成时执行,如下所示:
class signUpClass:UIViewController {
// check to see if form is empty
let ihelpController = UIViewController()
var CurrentStatus:status!
func signUp(var formArray: [String:String], complete:(CurrentStatus)->()){
var formStatus:status = ihelpController.checkIfFormIsEmpty(formArray)
if (formStatus == status.success){
//form is ok to process
// check DOB
//TODO: create date calculation function
let DateOfBirth:Int = 18
if DateOfBirth < 18 {
//user is not 18 they can not register
alertError("oops", message: "You must be 18 to register", comfirm: "Ok")
} else {
//Proceed with registration
let firebaseController = Firebase()
var email = "asdf@afd.com"
var password = "1234"
firebaseController.refPath("users").createUser(email, password: password, withValueCompletionBlock: {error, result in
if error != nil {
print("registration Error")
self.alertError("oops", message: "That email is registered already", comfirm: "OK")
} else {
let vc =
print("user can register")
firebaseController.firebaseRefUrl().authUser(email, password: password, withCompletionBlock:{
error, authdata in
if error != nil {
print("login Error")
}else{
let userId = firebaseController.firebaseRefUrl().authData.uid
formArray["userId"] = userId
firebaseController.refPath("users/\(userId)").updateChildValues(formArray)
print("user is register and can proceed to dashBoard")
//Send status to callback to handle
complete(status.success)
}
})
}
})
}
}
}
问题内容: 我正在尝试使用Firebase设置CollectionView中的单元格数量。我试图创建一个局部变量,并将其设置为与Firebase变量相同的值,但是当我尝试在函数外部使用它时,它将无法正常工作。我也尝试在ViewWillAppear中设置它,但是没有用。 我设置导航栏标题以查看值。当它在闭包中设置时,我得到了正确的值,当我在闭包外部(在firebase函数之后)写了它时,它的值为0。
我正试图通过谷歌云功能访问和更新我的firebase数据库,但它不起作用。 我已经编写了一个云函数,其中我已经初始化了Firebase-admin。 我必须提供service_account初始化管理。 我正在将我的firebase应用程序初始化为 我在谷歌云功能中没有我的服务帐户路径。 是否有任何方法从GOOGLE云函数访问Firebase? 谢谢
问题内容: 我正在使用新的React Context API而非Redux开发一个新应用,并且在使用之前,例如,当我需要获取用户列表时,我只是调用我的操作,但是现在使用React Context,我的操作可以在内部进行。我的使用者位于我的渲染函数中,这意味着每次调用我的渲染函数时,它将调用我的操作以获取用户列表,这不好,因为我将执行许多不必要的请求。 那么,我怎么只能一次调用动作,例如in 而不是
负责将云功能添加到现有Flatter应用程序。云功能的目标是每隔一段时间运行一次,看看用户帐户在谷歌日历中是否有即将发生的事件。 用户使用Google登录插件创建帐户并登录,然后存储在firebase中。 我已经为GoogleSignIn对象添加了所需的范围 登录过程 此时,Google登录过程将返回一个访问令牌,我已将其存储在firebase中,以供以后在云功能中使用。 我有客户id 现在,我不
问题内容: 我正在开发Spotify应用。我可以登录并获取我的令牌。我的问题是我无法在方法外访问变量。在这种情况下 这是我的方法: 如您所见,我在console.log中记录了名称,并在控制台中获得了正确的值。但是仅在我调用即使返回names变量的情况下得到的函数的情况下,它也可以在这里使用。 我需要那个变量。 问题答案: 没有返回任何东西。你需要从返回的承诺,然后当你回到内 即 它是由外部函数返
环顾四周,尝试通过swift捕获代码,但仍然需要一个函数来触发代码,以获得一个快速帐户连接。 不会在代码尝试上浪费时间,所以请寻找Firebase函数,这些函数将设置条带连接endpoint以进行重定向,并发回代码以完成该过程。 有人愿意帮忙吗? 感谢阅读。