0

別のファイルのテンプレートを使用して、angular の 1 ディレクティブを単体テストしようとしています。jasmine と ng-html2js を使用して、HTML テンプレートを $templateCache に隠します。SystemJS を使用しないプロジェクトでは、次を使用できます。

beforeEach(module('MyStupidModule', 'templates'))

どこのテンプレート - 「carma.conf.js」にあります

    preprocessors: {
        'Content/templates/**/*.html' : ['ng-html2js']
    },

    ngHtml2JsPreprocessor:{
        moduleName: 'templates'
    },

そしてそれはうまく動作します。

しかし、SystemJS では、これらのモジュールに到達可能にするために、両方のモジュールをインスタンス化する必要があります。自分のモジュールをモックするのは簡単です。

...
        mockAngularModule('MyStupidModule');
        // angular.mock.module('MyStupidModule');
        angular.mock.module('store', 'templates');
..

しかし、この「テンプレート」モジュールのインスタンス化をどこに置くことができますか? 今、それは投げます

エラー: [$injector:modulerr] 次の理由により、モジュール テンプレートのインスタンス化に失敗しました: エラー: [$injector:nomod] モジュール 'テンプレート' が利用できません!

4

0 に答える 0