Importation de fichier d'enregistrement du module à l'aide de seulement ambiante définition pour une utilisation dans les amd
J'ai un module qui dépend de Backbone
. J'ai un backbone.d.ts
définition, mais la Machine ne semble pas vouloir compiler mon module à moins que mon
import Backbone = module("backbone")
en fait des points pour un valide épine dorsale du module, par opposition à un fichier de définition. Je suis en utilisant AMD modules chargés et ont un requirejs cale définie pour la colonne vertébrale.
Est-il une solution en créant un faux squelette.ts de définition de module?
Mise à jour: Un effet secondaire de la solution est que le code comme cela ne fonctionne plus car le module n'existe plus. Il doit exister en raison de la requirejs cale. La seule solution que je connaisse est d'avoir les deux .d.les fichiers ts. Une pour le fichier à l'aide de la dorsale comme une importation qui ne comprennent pas le declare module
peu. L'autre pour l'utilisation d'un ///<reference
qui inclut le declare module
ligne.
///<reference path="../dep/backbone/backbone.d.ts" />
interface IApi {
version: number;
Events: Backbone.Events;
}
OriginalL'auteur ryan | 2012-10-22
Vous devez vous connecter pour publier un commentaire.
Le Tapuscrit de la langue a changé un peu juste depuis cette réponse originale à cette question.
Par exemple, pour importer un module externe que vous utilisez
require
(mon original de répondre à la vieille avaitmodule
mot-clé):En voici un cas d'utilisation pour l'importation d'épine dorsale à l'aide de l'information provenant Certainement Tapé:
À l'intérieur de la définition de type, l'épine dorsale du module est déclarée pour vous, qui est ce qui permet à l'importation pour être valide:
De sorte que la question d'origine pourrait être résolu à l'aide de...
Pour cet exemple de code, c'est tout ce qui est nécessaire - mais le plus souvent vous voudrez l'épine dorsale de la bibliothèque chargés lors de l'exécution... vous pouvez utiliser l' (officiellement expérimental)
amd-dependency
commentaire à cause de l'générédefine
appel de fonction pour inclure la colonne vertébrale.Dans mon test, j'ai trouvé l'ambiance Déclaration doit omettre la
module
bloc, juste comme un simple module de chez AMD ou CommonJS.Excellent, merci!
Il y a un effet de côté pour cette. Voir ma mise à jour
J'ai ajouté à ma réponse.
OriginalL'auteur Fenton