我有两个文件。一个称为 logic.js 和另一个称为 common.js 。在我的 logic.js 中,我有一个带有方法 getTile((的类,其中包含event
return new Promise(function(resolve) {
this.dbRef.limitToFirst(6).on('child_added', function(data) {
console.log('child_added called in promise');
resolve(data);
});
this.dbRef.limitToFirst(6).on('child_changed', function(data) {
console.log('child_changed called in promise');
resolve(data);
});
}.bind(this))
我想在我的 common.js 中称其为
database.getTile().then(setTile);
,但正如预期的那样,解决数据仅起作用一次,这意味着此代码不起作用。那么,如何触发我的 settile 每次触发 logic.js 的事件时>
为什么不使用类似的东西:
function setTitle(callback) {
this.dbRef.limitToFirst(6).on('child_added', function(data, callback) {
callback(data);
});
this.dbRef.limitToFirst(6).on('child_changed', function(data, callback) {
callback(data);
});
}
setTitle(function(data) {
console.log("Data received", data);
});
让我知道这是否满足您的要求。