要求与Node和jQuery的JS

我正在使用r.js试图通过在我的主应用程序文件上运行r.js来编译我的require JS应用程序:

$ r.js js/bootstrap.js 

但是,我收到了与jQuery的错误:

Error: Evaluating www/js/lib/jquery_plugins/slider.js as module "slider" failed with error: ReferenceError: jQuery is not defined

所以我知道这是因为在我的滑块插件中引用了jQuery,但我认为这可以通过在我的bootstrap.js文件中添加jQuery作为填充来解决,该文件如下所示:

 // Require JS bootstrap file require.config({ paths: { jquery: 'lib/jquery', backbone: 'lib/backbone', backboneLocalStorage: 'lib/backbone.localStorage', underscore: 'lib/underscore', util: 'lib/util', config: 'config', lang: 'lang', hammer: 'lib/hammer', moment: 'lib/jquery_plugins/moment', slider: 'lib/jquery_plugins/slider' }, shim: { jquery: { exports: '$' }, underscore: { exports: '_' }, backbone: { deps: ['underscore'], exports: 'Backbone' }, hammer: { deps: ['jquery'], exports: 'Hammer' } } }); // load the app require(['app'], function(App) { if(navigator.userAgent.indexOf("Chrome")) { // then I am running on my local host on chrome // so force device ready onDeviceReady(); } document.addEventListener('deviceready', onDeviceReady, false); function onDeviceReady() { App.initialize(); } }); 

我试图改变出口到jQuery而不是$,但这似乎并没有改变任何东西。

在shim下,你还没有指定slider&moment的依赖关系。

请检查什么滑块&矩出口:)

 shim: { jquery: { exports: '$' }, underscore: { exports: '_' }, backbone: { deps: ['underscore'], exports: 'Backbone' }, hammer: { deps: ['jquery'], exports: 'Hammer' }, slider: { deps: ['jquery'], exports: 'slider' }, moment: { deps: ['jquery'], exports: 'moment' } }