瀏覽器端的amd模塊定義- 異步模塊定義; 最大特點(diǎn)是提前預(yù)備好模塊,然后也有按需加載的方式;例如淘寶的kissysea.js的cmd-通用模塊定義; 在node.js出來(lái)之后,想讓前端的模塊化方式盡可能的保持和node.js的一致。然后,也有一些異步加載的方式。node.js的模塊化,很大一個(gè)特點(diǎn)是,有一個(gè)公共的node_modules的區(qū)域,用來(lái)存儲(chǔ)當(dāng)前的模塊,然后,模塊化的方式也是 import export這樣。es6的模塊化方式,讓前端也具備這樣的能力,但是,現(xiàn)在es6因?yàn)閳?zhí)行的問(wèn)題,很難跑全瀏覽器,剛剛好webpack這樣的方式,可以避免類(lèi)似于模塊怎么加載的問(wèn)題,因?yàn)樗褪且粋€(gè)js文件或者由打包定義好的幾個(gè)js文件,跟你程序的運(yùn)行邏輯其實(shí)沒(méi)什么關(guān)系。所以,前端直接es6 improt export 完事兒。還有一些組織方式,比如class,或者function,其核心也是一些數(shù)據(jù)和方法內(nèi)聚到一個(gè)包里面,然后提升簡(jiǎn)潔性和可維護(hù)性,本質(zhì)上是一樣的。當(dāng)然,這是實(shí)例級(jí)別的組織方式,而不是模塊級(jí)別的。一個(gè)模塊會(huì)有很多各類(lèi),也有可能。插件的形式這些還有誰(shuí)能補(bǔ)充一下么? 或者有什么更好的線索。。
有誰(shuí)能理一下js的模塊化歷史進(jìn)程么?或者繼續(xù)補(bǔ)充下來(lái)
縹緲止盈
2018-12-12 18:14:49