0

我一直在从事一个新项目,最近开始require.js在项目中使用。

一切似乎都很好,直到我尝试从application.js选项dashboard.js#dailyTab#weeklyTab单击或访问var a仪表板js中的变量时调用。我的代码如下

main.js

requirejs.config({
    baseUrl : '../static/js/',
    paths : {
        'jquery' : 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min',
        'jquery-ui' : 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.min',
        'bootstrap' : ['//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.1/js/bootstrap.min', 'bootstrap.min'],
    },
    shim : {
        'bootstrap' : ['jquery'],
        'bootswatch' : ['bootstrap'],
    }
});

require(["jquery", "jquery-ui", "bootstrap", "dashboard", "application"], function($, jui, bootstrap, dashboard, application) {
    $("#myTab a:first").tab("show");
}, function(err) {
    console.log(err)
});

仪表板.js

define(function() {
    var a = 10;
    var Reload = {
        dailyCharts : function() {
            console.log("Daily Charts");
        },
        weeklyCharts : function() {
            console.log("Weekly Charts");
        }
    };
    var Display = {
        none : function(node) {
            console.log("none");
        },
        block : function(node) {
            console.log("block");
        }
    }
});

应用程序.js

define(["jquery", "dashboard"], function(jquery, dashboard) {
    $("#dailyTab").click(function() {
        dashboard.Reload.dailyCharts();
    });
    $("#weeklyTab").click(function() {
        dashboard.Reload.weeklyCharts();
    });
});

有人可以告诉我我做错了什么或者我可以做些什么来解决这个问题。我接受我的编码技能不是很好。

非常感谢您对此的任何帮助。提前致谢

4

1 回答 1

2

好吧,你dashboard.js没有返回任何东西。会怎么application.js用?

define(function() {
    var a = 10;
    var Reload : {...};
    var Display : {...};
    //return the interface
    return {
      Reload : Reload,
      Display : Display
    }
});
于 2013-05-10T09:00:09.507 回答