我正在尝试以角度管理服务来管理数据库,问题是我试图将订阅存储在服务类而非组件类上,因此它们全都位于同一位置,但是据我了解,需要在激活订阅时定义订阅的回调。激活订阅后,有什么方法可以添加到订阅中?我看着.add()运算符,但这似乎仅在取消订阅后才起作用。
编辑
以下是我能想到的最佳功能;它可以工作,但是看起来并不优雅甚至不是最佳实践
function revealTile(table, tileNumber) {
const nextTable = table.slice(); // create a copy
nextTable[tileNumber] = 1; // update the copy
return nextTable; // return the copy
}
let table = [0,0,0,0];
table = revealTile(table, 1);
console.log(table);
table = revealTile(table, 2);
console.log(table);
table = revealTile(table, 0);
console.log(table);
table = revealTile(table, 3);
console.log(table);
答案 0 :(得分:1)
我通过观看一个完全无关的视频得到了答案,从角度上讲,答案是根本不订阅,并从服务返回一个可观察的对象,最后使用异步管道将可观察的对象解包