鍍金池/ 問答/HTML/ seajs如何做到讓模塊內(nèi)的require先執(zhí)行,再執(zhí)行后面的代碼

seajs如何做到讓模塊內(nèi)的require先執(zhí)行,再執(zhí)行后面的代碼

我一直都想了解seajs是如何確保模塊內(nèi)的require方法先執(zhí)行,然后再執(zhí)行require后的代碼

比如,我先引用了index.js

seajs.use('./js/index.js');

然后在index.js中引用a.js,
然后打印一段內(nèi)容

seajs.use('./a.js');
console.log('hello');

在a.js中也打印了一段內(nèi)容:

console.log('aaa');

而最終得到的結(jié)果是:

aaa //先輸出a.js
hello //再輸出hello.js

我知道這個結(jié)果是基于seajs對模塊的依賴處理,也看過一些相關(guān)的原理介紹,但還不是很明白
為何在index.js的require('./a.js'),會先去解析a.js并執(zhí)行其中的代碼,然后再執(zhí)行后面的代碼(console.log('hello');)

回答
編輯回答
維她命

肯定是這樣的啊,seajs.use的核心原理就是用script標(biāo)簽加載use里指定的腳本,而script標(biāo)簽是加載完就會執(zhí)行的

2017年12月16日 02:28