いいえ、動作しません。クエリが適用されません。
FirebaseListObservable
のref$
プロパティは、クエリが設定された参照ではありません。あなたは(コンストラクタのref
パラメータが$ref
プロパティに割り当てられます)source codeでこれを見ることができます:
return new FirebaseListObservable(ref, subscriber => {
...
let queried: firebase.database.Query = ref;
if (query.orderByChild) {
queried = queried.orderByChild(query.orderByChild);
} else if (query.orderByKey) {
queried = queried.orderByKey();
} else if (query.orderByPriority) {
queried = queried.orderByPriority();
} else if (query.orderByValue) {
queried = queried.orderByValue();
}
あなたはchild_added
を自分で使用したい場合は、あなたがあなた自身のクエリを構成することができます。
、あなたのコードでは、
$ref
に
on
を呼び出すことによって、あなたの
this.curUserPosts
プロパティはobservabl以外のものを割り当てられます
this.curUserPosts = this.af.database.list('/posts', {
query: {
orderByChild: 'user/id',
equalTo: id
}
});
this.curUserPosts.$ref
.orderByChild('user/id')
.equalTo(id)
.on("child_added", (child) => {
console.log(child);
});
注意e;渡されたリスナーがon
に割り当てられます。