Javascript 如何检查表单提交时firebase推送事件是否成功
这是我的聚合表单和javascript。它推得很好。我想做的是检查它是否成功,我将隐藏表单并显示一些确认文本或将用户重定向到另一个页面 那么,如何检查firebase推送是否成功Javascript 如何检查表单提交时firebase推送事件是否成功,javascript,firebase,polymer-1.0,firebase-realtime-database,Javascript,Firebase,Polymer 1.0,Firebase Realtime Database,这是我的聚合表单和javascript。它推得很好。我想做的是检查它是否成功,我将隐藏表单并显示一些确认文本或将用户重定向到另一个页面 那么,如何检查firebase推送是否成功 <form is="iron-form" method="get" action="firebaseURL/events" id="eventsDemo"> <paper-input name="name" label="Name" required auto-validate></p
<form is="iron-form" method="get" action="firebaseURL/events" id="eventsDemo">
<paper-input name="name" label="Name" required auto-validate></paper-input>
<paper-input name="password" label="Password" type="password" required auto-validate></paper-input>
<paper-checkbox name="read" required>You must check this box</paper-checkbox><br>
<paper-button raised onclick="_delayedSubmit(event)" disabled id="eventsDemoSubmit">
<paper-spinner id="spinner" hidden></paper-spinner>Submit</paper-button>
<div class="output"></div>
</form>
<script>
function _delayedSubmit(event) {
event.preventDefault();
spinner.active = true;
spinner.hidden = false;
eventsDemoSubmit.disabled = true;
// Simulate a slow server response.
setTimeout(function() {
//Polymer.dom(event).localTarget.parentElement.submit();
var firebase = new Firebase(eventsDemo.getAttribute('action'));
firebase.push(eventsDemo.serialize());
}, 100);
}
</script>
您必须选中此框
提交
函数_delayedSubmit(事件){
event.preventDefault();
spinner.active=true;
spinner.hidden=false;
eventsDemoSubmit.disabled=true;
//模拟缓慢的服务器响应。
setTimeout(函数(){
//Polymer.dom(event.localTarget.parentElement.submit();
var firebase=newfirebase(eventsDemo.getAttribute('action');
firebase.push(eventsDemo.serialize());
}, 100);
}
Firebase中的每个写入方法都可以采用可选的完成侦听器,当写入操作在服务器上完成时,该侦听器将被称为完成侦听器。从:
如果您想知道数据何时提交,可以添加一个完成回调。set()
和update()
都接受一个可选的完成回调,该回调在写入提交到数据库时调用。如果由于某种原因调用不成功,回调将被传递一个错误对象,指示失败发生的原因
我建议你从头读到尾。它包含了许多有用的小道消息,可以为您(和我们)节省很多时间。谢谢Frank!以下是使用箭头函数修改的@Frank answer for ES6版本:
dataRef.set("I'm writing data", error => {
if (error) {
alert("Data could not be saved." + error);
} else {
alert("Data saved successfully.");
}
});
这里
dataRef
包含什么?我无法获取登录方法成功事件,因为我可以在javascript
web中添加带有createUserWithEmailAndPassword
的用户。
dataRef.set("I'm writing data", error => {
if (error) {
alert("Data could not be saved." + error);
} else {
alert("Data saved successfully.");
}
});