-1

我正在使用我的 main.js 中的 requirejs - 我正在调用一个位于“header.js”中的方法,但我没有得到正确的响应,而是得到“未定义”

myMain.js :

    requirejs.config({

    baseUrl     : "js",
    paths       : {
        "jquery"    : "lib/jquery-1.9.1.min",
        "jqueryUi"  : "lib/jquery-ui-1.10.3.custom.min",
        "handleBar" : "lib/handlebars"
    },
    shim            : {

        "handleBar" : {
            exports : 'Handlebars',
            deps:['jquery', 'jqueryUi']
        }
    }

});

require(["jquery","jqueryUi","handleBar","scripts/header"],function (header) {

    console.log(header["getHeader"]);//undefined

});

myHeader.js :

define(["jquery"],function  ($) {

    var headerHandler = function(){

        return {
            getHeader:function(){
                console.log($); //not getting
                alert("i am getHeader"); //not getting
            }
        }

    }

    return new headerHandler();

})

这里有什么问题..我“返回”的方式是错误的吗?如果是这样,请有人纠正我吗?

4

1 回答 1

1

我在这里发现了问题:

我用错了,

require(["jquery","jqueryUi","handleBar","scripts/header"],function (header) {

    console.log(header["getHeader"]);//undefined

});

代替 :

require(["jquery","jqueryUi", "handleBar", "scripts/header"],function ($,$Ui,hBs,header) {

    header.getHeader();

});

现在工作正常。谢谢大家。

于 2013-07-06T07:37:10.130 回答