Ich habe eine Klasse mit über 80 Methoden, und jede Methode akzeptiert ein Objekt mit einer definierten Schnittstelle.Erstellen eines Mixins von Schnittstellen in Typescript
class Stuff {
/* many more */
getAccount(req: IAccount, callback: ICallback) {
return this._call('getAccount', req, callback);
}
getIds(req: IIDs, callback: ICallback) {
return this._call('getIds', req, callback);
}
/* many more */
}
ziemlich ‚langweilig‘ stuff, da es nur die Abbildung auf die darunter liegende _call
Verfahren und macht es für jede der Methoden sicher eingeben.
Aber manchmal diese req
param Objekte werden aus 2-Schnittstellen oder mehr, und statt der Schaffung eine weitere Schnittstelle für jedes Mal, wenn es eine „peinliche“, wie dies aus:
export interface ILoled extends IAccount {
loled: boolean;
}
export interface IRofloled extends ILoled {
rofled: boolean;
}
class Stuff {
getLols(req: ILoled){
}
getRofls(req: IRofloled){
}
}
ist es eine Möglichkeit, ich kann nur als ein "Inline" -Mix von Interfaces innerhalb der Methodenparameterliste? wie (die Arbeit offenbar nicht wichtig):
class Stuff {
getMoreStuff(req: <{} extends IAccount, ITime>) {
}
}
Ich fürchte, dass Sie eine Superschnittstelle erklären müssen. –