0
我正在爲一個多頁面應用程序使用requirejs。我對主文件的執行順序有一個奇怪的問題。這是我的設置。requirejs,multipage,奇怪的執行順序
在我所有的html頁面(這主要有所有被我的所有頁面都需要的通用js文件)
然後在每一頁上(比如page1.html):
<script data-main="main" src="require.js" />
<script>
require(['require','main'],function(require) {
require(['main-library']);
});
</script>
我main.js樣子:
require.config({
paths:{
'lib':'../lib',
'jquery': '../lib/jquery/jquery-1.7.1.min',
'jquery.iframe-transport' : '../lib/jquery.iframe-transport.min.js'
},
deps:['jquery','jquery-ui'],
shim: {
<other shim files>
},
});
require([<list of all other dependencies>], function() {
});
和主library.js樣子:
define('main-library',
['main',
'jquery.iframe-transport',
<other dependencies>
],
function() {
}
);
我的期望: 是否「main-library」不會開始加載,直到「main」和main中指定的所有依賴項未加載。我期望這一點,因爲我需要在每個頁面上嵌套的require調用「main-library」。往上看。
問題: 當我的page1.html加載時,它看起來像main-library.js開始加載甚至在main.js加載完成之前,主庫無法獲得require.config,因此路徑因爲依賴關係不被它看到。
我在做什麼錯?
你現在可以從詹姆斯的項目中看到你如何去做這件事。我認爲我的方法和詹姆斯解釋過的類似,但是他是requirejs的作者:) [example-multipage](https://github.com/requirejs/example-multipage) – 2015-01-24 00:09:50