RequireJS如何引用jQuery2.*版本和1.*版本

jquery文件放在lib路径下,怎么在项目中不同的目录下引用不同版本的jquery?

目录结构:

object:
    ----index.html
        ----lib
            ----jquery-2.2.0.min.js
            ----jquery-1.11.3.min.js
            ----require.js
        ----statics
            ----main.js
            
require.config({
    paths:{
        'lib':'../lib'
    },
    map:{
        '*':{
            'jquery':'lib/jquery-2.2.0.min'
        },
        'statics/html':{
            'jquery':'lib/jquery-1.11.3.min'
        }
    }
    
})

调用jQuery

require(['jquery'],function($){
    $('h2').css({'color':'red'})
})

通过map设置,引用位置不对,引用的是baseUrl/jquery.js;

http://127.0.0.1:8080/statics/jquery.js 
Uncaught Error: Script error for: jquery

那么,怎么在项目中不同的目录下引用不同版本的jquery?

var reqOne = requirejs.config({

  baseUrl: '../lib/',
  context:"context1",
  paths:{
    jquery: 'jquery-2.2.0.min'
  }
});
    
reqOne(['jquery'],
    function($) {    
    //用2.2.0做点什么;
      console.log("v1=" + $().jquery);                                    
});
        
var reqTwo  = requirejs.config({
  baseUrl: '../lib/',
  context:"context2",
  paths:{
    jquery: 'jquery-1.12.3.min'
  }
});
  
reqTwo(['jquery'],
    function($) {        
    //用1.12.3做点什么;
      console.log("v1=" + $().jquery);                                        
});

是这样解决的……搞不明白map什么作用

阅读 5.3k
1 个回答

是这样解决的……搞不明白map什么作用了

var reqOne = requirejs.config({
  baseUrl: '../lib/',
  context:"context1",
  paths:{
    jquery: 'jquery-2.2.0.min'
  }
});
    
reqOne(['jquery'],
    function($) {    
    //用2.2.0做点什么;
      console.log("v1=" + $().jquery);                                    
});
        
var reqTwo  = requirejs.config({
  baseUrl: '../lib/',
  context:"context2",
  paths:{
    jquery: 'jquery-1.12.3.min'
  }
});
  
reqTwo(['jquery'],
    function($) {        
    //用1.12.3做点什么;
      console.log("v1=" + $().jquery);                                        
});
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
1 篇内容引用
推荐问题
宣传栏