Javascript 如何在firebase中更新后返回成功数据
我试图在firebase中更新后返回数据,但它显示为Javascript 如何在firebase中更新后返回成功数据,javascript,firebase,angular,Javascript,Firebase,Angular,我试图在firebase中更新后返回数据,但它显示为undefined test().then((res) => { alert(res); }); test() { var fredNameRef = new Firebase('https://docs-examples.firebaseio.com/samplechat/users/fred/name'); var onComplete = function(error)
undefined
test().then((res) => {
alert(res);
});
test() {
var fredNameRef = new Firebase('https://docs-examples.firebaseio.com/samplechat/users/fred/name');
var onComplete = function(error) {
if (error) {
return error;
} else {
return "success";
}
};
fredNameRef.update({ first: 'Wilma', last: 'Flintstone' }, onComplete);
}
用于在更新期间检查错误,而不是接收数据
然后,如果成功,则触发onComplete
回调
在您的情况下,您希望保存数据,然后使用.on()
方法侦听更新
var fredNameRef = new Firebase('https://docs-examples.firebaseio.com/samplechat/users/fred/name');
fredNameRef.on('value', function(snap) {
console.log(snap.val());
});
fredNameRef.update({ first: 'Wilma', last: 'Flintstone' });
执行
.update()
方法后,它将触发.on()
方法。非常感谢您的快速回复。它现在工作正常。。我需要澄清一下once
方法。如果我在上使用一次而不是,会发生什么情况?相同的情况是,它只会在连接时触发一次而不是每次更新。在脱机状态下update()
将触发ref.on('value',函数(快照){})代码>。。。。!这种行为正确吗。。。。??看起来像虫子。如果我错了,请解释一下。。!Firebase SDK链接已移动到-->
var fredNameRef = new Firebase('https://docs-examples.firebaseio.com/samplechat/users/fred/name');
fredNameRef.on('value', function(snap) {
console.log(snap.val());
});
fredNameRef.update({ first: 'Wilma', last: 'Flintstone' });