Jasmine使用文本插件requireJS加载html模板时出错

时间:2015-12-03 16:07:22

标签: javascript requirejs jasmine

我遇到了一个我不知道如何解决的问题。我正在使用RequireJS,我正在使用RequireJS的插件文本。在使用Jasmine开发单元测试时,我有这个测试:

define(
[ "dep1", "channels" ],

function( dep1, channels ) {

    "use strict";

    describe( '* Test module 1:', function() {

        describe( '- Test public method1:', function() {

            it( '01. Test 1.', function( done ) {

                var _callback = function( resultCode ) {
                    expect( resultCode ).toBe( 1 );
                    done();
                };


                var _params = {
                    channel: channels.getChannelFromId( "0" ),
                    callback: _callback
                };

                dep1.test( _params );

            } );

        } );

    } );

} );

问题是我调用了dep1模块,而在dep1模块中有一个需要调用,需要一个具有HTML依赖的模块:

require( [ "module2" ], function( module2 ) {
    module2.init();
} );

模块2声明:

define( ["text!widgetDir/test/test.html","jquery"],

    function( template, $ ) {

        // ----

    }
);

编辑:widgetDir在requireJS config中定义:

"widgetDir": "../source/system/widgets",

我在控制台中收到此错误:

  

未捕获错误:模块加载超时:text!widget / test / test.html

如果在我的测试的依赖项上,我添加了module2,它可以工作。

 define(
    [ "dep1", "channels", "module2" ],

    function( dep1, channels, module2 ) {

为什么会这样?我不知道错误在哪里。

非常感谢,最诚挚的问候。

0 个答案:

没有答案