Ich versuche, eine Definitionsdatei für Lenker zu erstellen, für die Verwendung mit vorkompilierten Lenkerscripts. Lenker werden vorkompilierte Skripte in eine String-indizierte Hash-Tabelle von Funktionen einfügen, aber ich kann nicht herausfinden oder finden, wie dies definiert wäre.TypeScript Definieren einer Hash-Tabelle von Funktionen
wäre eine hypothetische Definition sein:
declare module Handlebars {
export var templates: { (model:any) => string; }[index: string];
}
aber das ist keine gültige Definition. Die Definition sollte für einen Aufruf wie folgt funktionieren:
var myHtml = Handlebars.templates["person-template"]({FNmae: "Eric"});
Eine Definition wie folgt ist schließen:
export var templates: { (model:any) => string; }[];
Aber das ist ein Array mit einem numerischen Index, und es ist nicht dasselbe, und VS Intellisense entscheidet nur, dass die Funktionen im Array beliebig sind.
Ich denke, Sie wollten schreiben: '{(model.any): string; } [] '(verwenden Sie einen Doppelpunkt anstelle eines Pfeils' => ') – dcstraw