我正在使用require-jquery.js
,我正在尝试添加jquery-ui
到组合中。
如果我在我的主页上使用这个定义,我会正确地得到 jquery-ui:
// load main app
require( { paths: {
'jqueryui': 'cafe/lib/jqueryui',
'ca': 'cafe/ca',
'ko': 'cafe/lib/knockout/knockout',
'komap': 'cafe/lib/knockout/knockout.mapping',
'kopost': 'cafe/lib/knockout/knockout-postbox',
'jd': 'cafe/lib/jaydata-1.2.5/jaydata',
'jdKo': 'cafe/lib/jaydata-1.2.5/jaydatamodules/knockout',
'jdDeferred': 'cafe/lib/jaydata-1.2.5/jaydatamodules/deferred',
},
waitSeconds: 60,
shim: {
'jd': { exports: '$data', deps: [ 'cafe/lib/jaydata-1.2.5/datajs-1.0.3' ] },
'jdDeferred': { exports: '$data', deps: [ 'jd' ] },
}
}, [ 'jquery', 'ko', 'cafe/log', 'sp/app','jqueryui' ], function($, ko, log, app ) {
//this logs the ui object properly
console.log($.ui);
} );
但是当我尝试从另一个模块调用它时:
define(['jquery', 'ko','jqueryui'], function ($, ko)
我从 require.js 得到一个错误:Uncaught TypeError: Object 0 has no method 'match'
。
我究竟做错了什么?