Require.js和可重用的UI函数

时间:2013-09-13 21:19:05

标签: javascript backbone.js requirejs

我正在使用Require.js编写的项目。当前从全局范围调用了许多重用函数。这些函数涉及ui过渡,隐藏/显示以及悬停事件的一般性。我想将这些功能组织成require,但不太确定在何处/如何包含它们。

例如,假设在应用程序中有多个点可以调用showDropdown()的常用函数。让我们说它需要jQuery来制作动画。哪里或如何是存储showDropdown功能的最佳位置?

说一个简单的函数,如:

function showDropdown(id) {
    var thisdropdown = $(id).find('.dropdown');
    $(thisdropdown).slideDown();
}

我可以创建一个UI文件夹,其中不同的js函数都是他们自己的文件。然后只需要在依赖于它们的任何其他文件上。但无论如何,这些文件需要将其功能导出到全局范围才能正确访问?

我觉得有一个明显的答案/设置,因为这必须是相当常见的项目。

另外,我在骨干应用程序中写这个,但我不认为这有任何直接影响,更多的是require.js问题。

1 个答案:

答案 0 :(得分:3)

创建一个util库或类似的东西:

// util.js

define({
    showDropdown: function(id) {
        var thisdropdown = $(id).find('.dropdown');
        thisdropdown.slideDown();
    }    
});

然后在别处使用它:

require(['util'], function(util) {

    util.showDropdown('my-id');

});