snapshot.ref 不是函数
snapshot.ref is not a function
我正在尝试从快照更新字段,但即使快照不为空且打印正确,我似乎也无法在其上使用 ref.update()
。我试着关注 。我在这里错过了什么?
我的代码:
ref.limitToLast(1).on('child_added', function(snapshot) {
console.log(snapshot.val());
var serial_number = String(snapshot.child("serial").val()); //
console.log(serial_number);
snapshot.ref().update({ signed: 'true' });
// ...
}
输出:
问题是您引用的答案使用的是以前版本的 Firebase,而 API 与当前版本非常接近,但存在一些差异。
有一个 guide 讨论了变化以及从 Firebase 版本 2 和版本 3 升级时需要做什么。
特别是,many no-argument getters have been changed to read-only properties:
BEFORE
// Reference
var key = ref.key();
var rootRef = ref.root();
var parentRef = ref.parent();
// Query
var queryRef = query.ref();
// DataSnapshot
ref.on("value", function(snapshot) {
var dataRef = snapshot.ref();
var dataKey = snapshot.key();
});
AFTER
// Reference
var key = ref.key;
var rootRef = ref.root;
var parentRef = ref.parent;
// Query
var queryRef = query.ref;
// DataSnapshot
ref.on("value", function(snapshot) {
var dataRef = snapshot.ref;
var dataKey = snapshot.key;
});
我正在尝试从快照更新字段,但即使快照不为空且打印正确,我似乎也无法在其上使用 ref.update()
。我试着关注
我的代码:
ref.limitToLast(1).on('child_added', function(snapshot) {
console.log(snapshot.val());
var serial_number = String(snapshot.child("serial").val()); //
console.log(serial_number);
snapshot.ref().update({ signed: 'true' });
// ...
}
输出:
问题是您引用的答案使用的是以前版本的 Firebase,而 API 与当前版本非常接近,但存在一些差异。
有一个 guide 讨论了变化以及从 Firebase 版本 2 和版本 3 升级时需要做什么。
特别是,many no-argument getters have been changed to read-only properties:
BEFORE
// Reference var key = ref.key(); var rootRef = ref.root(); var parentRef = ref.parent(); // Query var queryRef = query.ref(); // DataSnapshot ref.on("value", function(snapshot) { var dataRef = snapshot.ref(); var dataKey = snapshot.key(); });
AFTER
// Reference var key = ref.key; var rootRef = ref.root; var parentRef = ref.parent; // Query var queryRef = query.ref; // DataSnapshot ref.on("value", function(snapshot) { var dataRef = snapshot.ref; var dataKey = snapshot.key; });