2014-03-31 70 views
0

在我們的應用程序中,後端傳遞CDN的基本URL。例如:RequireJS如何從CDN和本地加載文件?

... 
<script src="${props.cdn}/jquery.js"></script> 
... 
<script src="${props.local}/app.js"></script> 
... 

我們想要開始使用RequireJS。所以問題是如何將$ {props.cdn}和$ {props.local}的值傳遞給RequireJS並在那裏使用它們?例如,像:

<script src="${props.cdn}/require.js" data-main="${props.local}/main.js" 
    data-cdn="${props.cdn}" data-local="${props.local}"></script> 

而在main.js類似:

require.config({ 
    paths: { 
     jquery: require.config.cdn + '/jquery.js', 
     someScript: require.config.local + '/someScript.js', 
    } 
}); 

回答

0

RequireJS不會搶任何東西比其他data-mainscript標籤。一種方法來得到你想要的是做這樣的:

<script> 
    require = { 
     paths: { 
      jquery: '${props.cdn}/jquery.js', 
      someScript: '${props.local}/someScript.js', 
     } 
    } 
</script> 
<script src="${props.cdn}/require.js" data-main="${props.local}/main.js"/> 

的RequireJS的方式工作,如果你裝RequireJS之前設置require到RequireJS配置,那麼RequireJS會拿起它的初始配置那裏。您仍然可以在main.js文件中調用require.config,該文件添加墊片和路徑。 RequireJS將多個配置合併爲一個配置。

做到這一點的另一種方法是使用config配置選項,但是你必須將你的代碼結構與現在有很多不同。

相關問題