我正在使用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'
。
我做错了什么?
答案 0 :(得分:0)
尝试将配置对象放在单独的require.config
调用中:
require.config({
paths : { ... }
});