Uncaught Error: Bootstrap's JavaScript requires jQuery with requirejs
Uncaught Error: Bootstrap's JavaScript requires jQuery with requirejs
我收到此错误消息,指出 jQuery 未定义。
bootstrap.js:8 未捕获错误:Bootstrap 的 JavaScript 需要 jQuerybootstrap.js:8(匿名函数)
Bootstrap v3.3.0
jQuery JavaScript 库 v2.1.3
需要
require.config({
shim: {
'backbone': {
deps: ['underscore', 'jquery']
},
'backbone-validation': {
deps: ['backbone', 'jquery']
},
'jquerymx': {
deps: ['jquery']
},
'bootstrap': {
deps: ['jquery']
}
},
paths: {
'jquery': '/public/js/lib/jquery-2.1.3',
'jquerymx': '/public/js/lib/jquerymx-3.2.custom',
'bootstrap': '/public/js/lib/bootstrap',
'handlebars': '/public/js/lib/handlebars-v2.0.0',
'underscore': '/public/js/lib/underscore',
'backbone': '/public/js/lib/backbone',
'backbone-validation': '/public/js/lib/backbone-validation'
}
});
require(
[
'order!jquery',
'order!jquerymx',
'order!bootstrap',
'order!handlebars',
'order!underscore',
'order!backbone',
'order!backbone-validation'
], function () {
require(['main'], function (main) {
main.initialize();
});
});
这里有什么问题吗?
谢谢。
几点建议:
首先,order
插件在 RequireJS 2.0 中不再受支持或不再需要。 shim
配置完全可以表达你需要做什么。 See here 了解详情。
其次,我有点困惑为什么您将 jquery
和 jquery.min
都列为依赖项。他们应该提供完全相同的东西,jquery.min
只是一个较小的文件。当您两次拉入相同的代码时,某些 JS 可能会感到困惑,这可能就是这里发生的情况。尝试从您的配置中删除 jquery.min
的所有实例。
最后,您的两阶段 require(...)
通话似乎没有必要。假设您的 main
模块直接列出了它需要的库,您应该可以这样做:
require(['main'], function (main) {
main.initialize();
});
如果上述建议没有帮助,请提供更多详细信息——即 main
模块中的内容。
我收到此错误消息,指出 jQuery 未定义。
bootstrap.js:8 未捕获错误:Bootstrap 的 JavaScript 需要 jQuerybootstrap.js:8(匿名函数)
Bootstrap v3.3.0
jQuery JavaScript 库 v2.1.3
需要
require.config({
shim: {
'backbone': {
deps: ['underscore', 'jquery']
},
'backbone-validation': {
deps: ['backbone', 'jquery']
},
'jquerymx': {
deps: ['jquery']
},
'bootstrap': {
deps: ['jquery']
}
},
paths: {
'jquery': '/public/js/lib/jquery-2.1.3',
'jquerymx': '/public/js/lib/jquerymx-3.2.custom',
'bootstrap': '/public/js/lib/bootstrap',
'handlebars': '/public/js/lib/handlebars-v2.0.0',
'underscore': '/public/js/lib/underscore',
'backbone': '/public/js/lib/backbone',
'backbone-validation': '/public/js/lib/backbone-validation'
}
});
require(
[
'order!jquery',
'order!jquerymx',
'order!bootstrap',
'order!handlebars',
'order!underscore',
'order!backbone',
'order!backbone-validation'
], function () {
require(['main'], function (main) {
main.initialize();
});
});
这里有什么问题吗?
谢谢。
几点建议:
首先,order
插件在 RequireJS 2.0 中不再受支持或不再需要。 shim
配置完全可以表达你需要做什么。 See here 了解详情。
其次,我有点困惑为什么您将 jquery
和 jquery.min
都列为依赖项。他们应该提供完全相同的东西,jquery.min
只是一个较小的文件。当您两次拉入相同的代码时,某些 JS 可能会感到困惑,这可能就是这里发生的情况。尝试从您的配置中删除 jquery.min
的所有实例。
最后,您的两阶段 require(...)
通话似乎没有必要。假设您的 main
模块直接列出了它需要的库,您应该可以这样做:
require(['main'], function (main) {
main.initialize();
});
如果上述建议没有帮助,请提供更多详细信息——即 main
模块中的内容。