이것은 매우 쉽습니다. 내가 jQuery의 충돌이없는 버전을 사용하고있는 나의 필요 모듈에 트위터의 부트 스트랩 플러그인의 AMD 버전을로드하려고한다. (레거시 코드에 다른 jquery 객체가 있기 때문에 충돌이없는 버전이 필요하다.)requirejs no-conflict jquery 객체 수정하기
그러나 AMD 정의가 필요한 모듈의 충돌없는 jquery 객체에 메소드를 추가하기 위해 AMD 플러그인을 사용할 수 없습니다. 어느 누구도 제가 잘못하고있는 것을 생각하고 있습니까? 그것이 분명해야하는 것처럼 보입니다.
AMD 부트 스트랩 모듈은 여기에서 나온 : https://github.com/clexit/bootstrap-amd
여기 내 코드입니다.
require.config({
map: {
'*': { 'jquery': 'jquery-private' },
'jquery-private': { 'jquery': 'jquery' }
},
paths : {
jquery : '../bower_components/jquery/jquery',
underscore : '../bower_components/underscore/underscore',
backbone : '../bower_components/backbone-amd/backbone',
marionette : '../bower_components/marionette/lib/core/amd/backbone.marionette',
'backbone.wreqr' : '../bower_components/backbone.wreqr/lib/amd/backbone.wreqr',
'backbone.babysitter' : '../bower_components/backbone.babysitter/lib/amd/backbone.babysitter',
'localstorage' : '../bower_components/backbone.localStorage/backbone.localStorage',
handlebars : '../bower_components/handlebars/handlebars',
text: '../bower_components/requirejs-text/text',
hb: '../bower_components/requirejs-handlebars/hb',
bootstrap: '../bower_components/bootstrap/amd'
},
shim : {
underscore : {
exports : '_'
},
handlebars: {
exports: 'Handlebars'
}
}
});
require(['jquery', 'bootstrap'],function($){
console.log($);
$('#MainRegion').modal();
});
작동. :) jquery-private 모듈에 jq 객체를 반환하는 대신 $ 대신에 충돌 메서드를 적용했습니다. 처음부터 내 문제의 일부가되었을 수 있습니다. 고마워 루이스. 감사합니다. –