Javascript 如何或如何使用firebase有效地处理错误?
我一直在阅读firebase文档,使用的是非常异步的代码。我想知道firebase是否在回调中抛出错误和/或传递错误数据。据我所知,文档中没有提到它。Javascript 如何或如何使用firebase有效地处理错误?,javascript,asynchronous,firebase,Javascript,Asynchronous,Firebase,我一直在阅读firebase文档,使用的是非常异步的代码。我想知道firebase是否在回调中抛出错误和/或传递错误数据。据我所知,文档中没有提到它。 提前感谢您的建议Firebase目前不会产生开发人员可使用的错误(因错误输入引发的异常除外)。目前,Firebase操作保证成功或从不触发事件。在网络连接问题的情况下,Firebase不会触发事件。这是预期的行为,因为Firebase设计为在脱机模式下工作,一旦重新建立连接,它将自动使您加快速度 请注意,在将来,我们将抛出违反安全性的错误,并可能
提前感谢您的建议Firebase目前不会产生开发人员可使用的错误(因错误输入引发的异常除外)。目前,Firebase操作保证成功或从不触发事件。在网络连接问题的情况下,Firebase不会触发事件。这是预期的行为,因为Firebase设计为在脱机模式下工作,一旦重新建立连接,它将自动使您加快速度
请注意,在将来,我们将抛出违反安全性的错误,并可能抛出其他错误类型。用于捕获和处理这些错误的API尚未编写。您需要创建一个用于处理错误的auth函数。请参阅下面的jsFiddle以获得一个很好的示例
function initAuth(ref) {
return new FirebaseSimpleLogin(ref, function (err, user) {
// if there is an error then display it
if (err) {
displayError(err);
} else if (user) {
// we only want to log people in through the email/password provider
if( user.provider !== 'password' ) {
auth.logout();
}
else {
// logged in!
uid = user.uid;
// save the user to our firebase
ref.child(user.uid).set({
id: user.id,
uid: user.uid,
email: user.email
});
// switch over the the user info screen
switchView('userInfo');
}
} else {
// logged out!
console.log('not logged in');
}
});
}
好的,所以请尝试使用用户输入来处理声明。。。我想我可以处理一个失败的操作(不会引发错误),在设定的时间量之后将闭包发送到超时-应该多长时间我不确定。。。