0

我无法确定何时加载我的 jquery(从单独的 js 文件到 durandal 视图)。

我想做一些事情,比如附加事件处理程序,就像我通常使用 jquery 的 $(document).ready(function(){});

在 shell.js 中,我尝试使用 requirejs 加载我的另一个名为 unicorn.js 的 js 文件,如下所示:

define(function(require) {
    var router = require('durandal/plugins/router');
    var unicorn = require('../../content/js/unicorn');  

    return {
        router: router,        
        activate: function () {
            return router.activate('dashboard');
        },
        viewAttached: function () {
            console.log('viewattached');
            unicorn.setup();
        }
    };
});

它似乎加载正常,但告诉我在我的 unicorn.js 文件中,“未定义定义”。看起来是这样的:

define(function () {    
    var unicorn = {         
        setup: function() {
            $('a').click(function(e) {
                //do stuff
            });
    };
});

我究竟做错了什么?

4

1 回答 1

0

我只是想出来了-或者至少是一种方法。我在捆绑的(第三方)脚本中定义了我的独角兽脚本。这是提前加载它,因此不理解“定义”关键字。然后我在 shell.js 中再次加载它,它工作正常。我所要做的就是将它从捆绑的脚本区域中删除。

于 2013-10-29T19:47:52.947 回答