RequireJS & SeaJS
在 模塊化開發(fā)
開發(fā)以前,都是直接在頁面上引入 script
標(biāo)簽來引用腳本的,當(dāng)項(xiàng)目變得比較復(fù)雜,就會(huì)帶來很多問題。
JS項(xiàng)目中的依賴只有通過引入JS的順序來確定,項(xiàng)目會(huì)變得復(fù)雜難以維護(hù)。
復(fù)雜的腳本會(huì)暴露很多全局變量, 比如 $,_. ... 。
同步加載的時(shí)候,網(wǎng)頁會(huì)停止渲染,加載時(shí)間越長(zhǎng),網(wǎng)頁失去響應(yīng)的事件就越長(zhǎng)。
于是,AMD 規(guī)范就誕生了,AMD 即為異步模塊定義,有效避免同步加載導(dǎo)致頁面的假死現(xiàn)象。RequireJS 是一個(gè) AMD 的實(shí)現(xiàn),后來還有CMD規(guī)范,玉伯的 而SeaJS 是 CMD 的一個(gè)實(shí)現(xiàn),兩者最大的區(qū)別就是
RequireJS 是預(yù)加載,而sea.js 是懶加載,也就是按需加載
什么意思 ??