0
は、以下の(簡体字)のコードを検討:「子削除済み」イベントが発生しないようにするにはどうすればよいでしょうか?
var queueTask = function (taskObject) {
var deferred = $q.defer();
// Create new task reference & push new Task object to reference location
var newTaskRef = firebase.database().ref("task").push(taskObject);
newTaskRef.once('child_removed', function (snapshot) {
// SUCCESS
console.log("@DEBUG - TASK COMPLETE/CHILD REMOVED");
deferred.resolve(snapshot);
});
return deferred.promise;
};
(サーバ側の作業者は、タスクを処理し、データベース上の別の場所に結果を書き込み、そのオブジェクトを削除する。)
タスクオブジェクトが削除されますが、child-removed
イベントは発生しません。
child-removed
イベントが発生するのを防ぐにはどうすればよいですか?
私の最初の仮定は、タスクがあまりにも速く実行されているということです。 – Lindauson
私は要素として処理時間を削除しました:タスクワーカーの処理コードに人為的な遅延を追加しましたが、結果は同じです: 'on-removed'イベントは決して発生しません。 – Lindauson
また、非ルートの場所( '.../queue/task /')にタスクを追加しましたが、それでも問題は解決しませんでした。 – Lindauson