未捕获错误:脚本错误:jquery(...)

时间:2016-11-16 09:17:20

标签: javascript jquery node.js require

我试图加载需要jquery才能工作的插件jquery.countdown

我在init类上调用插件时遇到此错误:

  

获取http://localhost:3008/js/jquery.js 404(未找到)

     

require.js:166 Uncaught Error:脚本错误:jquery(...)

这是我的首发代码:

    define(function (require) {
    var commons = require('commons'), 
    core = require('core/core_library'),
    $ = require('vendor/jquery'),
    ButtonStatus = require('module-pf/ButtonStatus'),
    Archive = require('module-pf/Archive'),
    Countdown = require('appvendor/jquerycountdown');

    });

所以我开始调查。首先,jquery.countdown库正确加载,如调试所示:

Countdown correctly loaded

所以我猜测require并不知道这些库的加载顺序。经过一些研究,我发现你可以嵌套依赖关系来订购它们:

  define(['commons'], function () {
  require(['vendor/jquery'], function (commons) {

    //Added this for testing by calling jquerycountdown internal funcionality

    require(['appvendor/jquerycountdown'], function (inyectedCountdown) {
      $('#timer').countdown('2020/10/10', function (event) {
        $(this).html(event.strftime('%D days %H:%M:%S'));
      });
    });
  });
});

但我仍然得到同样的错误。我不知道发生了什么,也许是不兼容的jquery版本?我手动添加了该库。 Jquery在我的项目中正常工作,但它正在加载两个实例,一个位于js / jquery(404),第二个位于vendor / js / jquery(200)。

1 个答案:

答案 0 :(得分:0)

这就是我解决它的方法:

jquerycountdown库中,我们找到了一个调用jquery的定义:

    define([ "jquery" ], factory);

所以我刚刚添加了vendor/jquery