2013-04-15 3 views
0

Мне нужен модуль js, который загружает набор других модулей, основываясь на конфигурации. Что-то вроде этой структурыМодуль Load Requirejs с относительным путем

define(['json!config.json', function() { 
    //load module on config.path + 'modulea' ; 
    //load module on config.path + 'moduleb' ; 
    doSomething(modulea,moduleb) ; 

}) ; 

что это лучший способ сделать это?

ответ

2
define(['config.json'], function(config) { 
    require.config({ 
     paths: { 
     "modulea": config.path + "modulea", 
     "moduleb": config.path + "moduleb" 
    } 
}); 

Затем вы можете требовать свои модули из любой точки вы хотите, просто убедитесь, что вышеуказанная всегда выполняется первым.

http://requirejs.org/docs/api.html#config

-1

вы можете использовать загрузку сценария, если вы доверяете источнику сценариев. Вы можете использовать функцию, как:

loadscript = function(url,callback,err) { 
    var s = document.createElement('script'); 
    s.src=url; 
    if(typeof callback != 'undefined') { s.onload=callback; } 
    if(typeof err != 'undefined') { s.onerror=err; } 
    document.getElementsByTagName('head')[0].appendChild(s); //assuming you want the script tags in the document head 
} 
+0

Почему это уцененный без объяснения предполагаемого дефекта? –

0

Как насчет:

define(['json!config.json', function(config) { 
    require([config.path + 'modulea', config.path + 'moduleb'], function(modulea, moduleb) { 
    doSomething(modulea, moduleb) ; 
    } 
}) 
Смежные вопросы