ich eine Schnittstelle wie dieses:Typ eine Variable, so dass es passt sich an die Unterzeichnung eines (nicht statisch) Member-Funktion
export declare class DRMAgent extends HTMLObjectElement {
onDRMMessageResult(msgID: string, resultMsg: string, resultCode: number);
}
Und ich möchte eine resultHandler nach der Unterzeichnung von onDRMMessageResult
instanziiert , aber ich bin mir nicht sicher, wie man den Typ schreibt (Ich habe DRMAgent.onDRMMessageResult
unten versucht, aber dieses beschwert sich: "TS2339: Property 'onDRMMessageResult' does not exist on type typeof DRMAgent"
, vermutlich, weil es keine statische Eigenschaft ist).
let drmagent: DRMAgent = document.getElementById('drmagent') as DRMAgent;
let resultHandler: DRMAgent.onDRMMessageResult =
(msgID: string, resultMsg: string, resultCode: number) => {
// handle result
}
drmagent.onDRMMessageResult = resultHandler;
Was ist der richtige Weg, den Typ für resultHandler
zu schreiben?
Hinweis: Ich weiß, dass ich es als (msgID: string, resultMsg: string, resultCode: number)=>any
eingeben kann, aber das erfordert Kopieren-Einfügen der Parameter direkt von der Schnittstelle. Ich würde gerne wissen, ob es möglich ist, es nur durch Bezugnahme auf den Namen der Mitgliedsfunktion der Schnittstelle irgendwie einzugeben.