2017-09-26 1 views
0

J'ai une application tapée qui a été compilée dans un seul fichier, myjs.js dans le dossier js. Et j'ai une installation de karma jasmine sur mon espace de travail.Comment résoudre une erreur "définir n'est pas définie" lors de l'utilisation de karma de jasmin avec un typecript compilé pour tester un composant?

dans les myjs.js il y a le code

var require, define, requirejs; 
(function() {compiled typescript code here })(); 
etc etc etc; 

Quelque part dans mon tapuscrit compilé est le code

define('component/to/test', ["dependencies"], function(dependencies){ ... } 

dans mon TestScript de jasmin, j'ai,

define([component/to/test], function(component){ jasmine specifications here}); 

Cependant, lors de l'exécution du fichier de jasmin avec le début karma, j'obtiens l'erreur que

define is not defined 

J'ai vérifié le fichier de configuration du karma, les deux fichiers sont inclus js/.js et spécifications/ .js.

Une idée de ce que je fais mal, c'est la première fois que je fais quelque chose comme ça.

+0

Vous devez utiliser un chargeur compatible AMD. –

+0

comment ferais-je cela? – needoriginalname

+0

En utilisant un chargeur AMD comme RequireJS ou le chargeur Dojo. Vous pouvez également charger des modules AMD avec SystemJS. –

Répondre

0

a trouvé le problème. J'ai oublié de faire du karma après le départ du karma.