javascript - webpack異步加載js問題
問題描述
我導(dǎo)入了兩個(gè)js,其中第一個(gè)是提取出來的公用js,第二個(gè)是頁面js并且依賴第一個(gè)js。我想讓兩個(gè)js非阻塞加載,但又能正常的處理依賴,也就是,一和二同時(shí)加載,但二只有在一加載完成的基礎(chǔ)上才執(zhí)行。該怎么搞
問題解答
回答1:
這是我我把js放到head中,這是界面解析順序,這是阻塞,jquery放在head中,把parseHtml分割了。在body底部已經(jīng)沒必要了,因?yàn)樽罱K耗時(shí)的是執(zhí)行script的時(shí)間
回答2:現(xiàn)代瀏覽器,一般默認(rèn)就是這個(gè)處理機(jī)制。js并行下載,從上到下,下載完立馬執(zhí)行,其中,就算下面的先下載完成,其也必須等其上面的js下載執(zhí)行完,其才能執(zhí)行。http://www.cnblogs.com/cococe...
回答3:require.ensure應(yīng)該是能夠滿足你的需求的。
require.ensure(dependencies, callback, chunkName)
具體可以見:webpack 按需打包加載
回答4:require.ensure不適合你的要求,因?yàn)槟闶且瑫r(shí)加載,我看了下require.ensure生成后的文件,它的原理是通過promise+jsonp的方式,阻塞式加載js,可以實(shí)現(xiàn)按需,但不是并行。對(duì)于js本身browser會(huì)并行請(qǐng)求,只不過數(shù)量有限制。
相關(guān)文章:
1. html5 - datatables 加載不出來數(shù)據(jù)。2. node.js - mongodb查找子對(duì)象的名稱為某個(gè)值的對(duì)象的方法3. 測試自動(dòng)化html元素選擇器元素ID或DataAttribute [關(guān)閉]4. html5和Flash對(duì)抗是什么情況?5. 利用IPMI遠(yuǎn)程安裝centos報(bào)錯(cuò)!6. javascript - QQ第三方登錄的問題7. 在mac下出現(xiàn)了兩個(gè)docker環(huán)境8. 運(yùn)行python程序時(shí)出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯(cuò)誤?9. spring-mvc - spring-session-redis HttpSessionListener失效10. 正在使用electron和node.js做桌面應(yīng)用,需要實(shí)時(shí)監(jiān)聽是否有網(wǎng)絡(luò)連接,node或者electron是否可以做到

網(wǎng)公網(wǎng)安備