Итак, я видел много онлайн, одна из больших проблем, с которыми я сталкиваюсь, это половина примеров, которые либо не компилируются в машинописи, либо используют устаревшие методы в Rx Js 6.
это то, с чего я начинаю
@registrah([
{ token: 'test', useValue: 1},
{ token: LoggerDefault, useFactory: memoize( createDefaultLogger ) },
{ token: LoggerTypeOrm, useFactory: memoize( createTypeOrmLogger ) },
{ token: LoggerSecurity, useFactory: memoize( createSecurityLogger ) },
])
моя текущая попытка это
const res = from(registrations).pipe(groupBy(
(p) => {
const {token, ...provider } = p;
return Object.keys(provider)[0];
}),
mergeMap(group => group.pipe(
reduce((acc: Array<AllProvider<any>>, cur) =>[...acc, cur], [])
))
);
res.subscribe((next) => console.log(next) );
, которая выводит
[ { token: 'test', useValue: 1 } ]
[
{ token: 'defaultLogger', useFactory: [Function: bound variadic] },
{ token: 'typeormLogger', useFactory: [Function: bound variadic] },
{ token: 'securityLogger', useFactory: [Function: bound variadic] }
]
что я хочу - это
{ useValue: [ { token: 'test', useValue: 1 } ] },
{
useFactory: [
{ token: 'defaultLogger', useFactory: [Function: bound variadic] },
{ token: 'typeormLogger', useFactory: [Function: bound variadic] },
{ token: 'securityLogger', useFactory: [Function: bound variadic] }
]}
, и так как я слишком долго боролся с этим, я также хотел бы увидеть ответ для
{
useValue: [ { token: 'test', useValue: 1 } ],
useFactory: [
{ token: 'defaultLogger', useFactory: [Function: bound variadic] },
{ token: 'typeormLogger', useFactory: [Function: bound variadic] },
{ token: 'securityLogger', useFactory: [Function: bound variadic] }
]
}