У меня есть эта функция:
const subs: Array<Subscription> = [];
const startActions = function () {
const db = client.db('local');
const delSub = del.subscribe(function (v: OplogDoc) {
// ...
});
const insertSub = insert.subscribe(function (doc: OplogDoc) {
// ...
});
const updateSub = update.subscribe(function (doc: OplogDoc) {
// ...
});
subs.push(
delSub,
insertSub,
updateSub
);
};
Я получаю эту ошибку:
Вот тип:
export type SubjectMap = {
[key: string]: Subject<Object>,
all: Subject<any>,
update: Subject<Object>,
insert: Subject<Object>,
delete: Subject<Object>,
errors: Subject<Object>,
end: Subject<Object>,
del: Subject<Object>
}
поэтому delSub
, insertSub
и updateSub
должны иметь одинаковый тип ... кто-нибудь знает, что здесь происходит?
UPDATE:
Провёл ещё какое-то расследование. Проверка типа, по-видимому, происходит только для первого аргумента Array.prototype.push, и в этом случае все подписки завершаются неудачно, но теперь я вижу эту забавную: