export class Module {
static register<T>(provider: Array<Provider>): ModuleWithProviders {
return {
ngModule: T, // error type is being used as value
providers: provider
};
}
würde Ich mag so etwas wie dieses Module.register<AboutModule>([AboutService])
haben, die das Modul und Anbieter teilt mit diesem Modul registriert werden, aber ich bin nicht sicher, wie dies mit Typoskript Generika zu tun Könnte jemand helfen ich damit.Generics in statischen Methoden in Typoskript
Auch was sollte der Param-Typ sein, nur Typen anstelle von anderen Typen zu akzeptieren. Angenommen, ich möchte Parameter haben, die nur Klassentypen akzeptieren.
stats(list: ClassType){} // something like this
stats(list: any){} // currently im using this, how should I restrict param only to types.
Jede Hilfe wird sehr geschätzt.
Warum nicht make '(klass: typeof T, Anbieter: Array)'? Dann nennen Sie es '.register (AboutModule, [AboutService])' und 'T' wird vom ersten Parameter abgeleitet. –
jonrsharpe
@jonrsharpe wenn ich klasse: typeof T seine Wurffehler nur als Typ bezeichnet aber als Wert verwendet – user3205479
Nun, Sie brauchen auch ngModule: klass', nicht 'T'. – jonrsharpe