Sto provando a creare un file di definizione per Handlebars, da utilizzare con script manubrio pre-compilati. Handlebars inserisce script precompilati in una tabella hash indicizzata di stringhe, ma non riesco a capire o scoprire come questo verrà definito.TypeScript Definizione di una tabella hash delle funzioni
Una definizione ipotetica potrebbe essere:
declare module Handlebars {
export var templates: { (model:any) => string; }[index: string];
}
ma non è una definizione valida. La definizione dovrebbe funzionare per una chiamata in questo modo:
var myHtml = Handlebars.templates["person-template"]({FNmae: "Eric"});
Una definizione di questo tipo è vicino:
export var templates: { (model:any) => string; }[];
Ma questo è un array con un indice numerico, e non è la stessa cosa, e VS Intellisense decide che le funzioni dell'array sono qualsiasi.
Penso che intendevi scrivere: '{(model.any): string; } [] '(usa i due punti invece di una freccia' => ') – dcstraw