使用mini-define實(shí)現(xiàn)前端代碼的模塊化管理
mini-define
依據(jù)require實(shí)現(xiàn)的簡(jiǎn)易的前端模塊化框架。如果你不想花時(shí)間學(xué)習(xí)require.js,也不想翻看長(zhǎng)篇的cmd/amd規(guī)范,那么這個(gè)mini-define就是你不錯(cuò)的選擇。如果你之前用過(guò)sea.js或require.js那么mini-define更加高效,更加輕量,更加易用。項(xiàng)目地址:github
用法
首先定義模塊
定義模塊
一:定義模塊用define函數(shù)
1.1 根據(jù)是否有依賴(lài),有兩種情況:
1.1.1:沒(méi)有依賴(lài)的模塊
define('id',function(){
// put your code here
});
1.1.2:有依賴(lài)的模塊
define('id',['modeA','modeB'],function(A,B){
// put your code here
});
1.2 根據(jù)是否需要返回處理結(jié)果給外部使用,又可以分兩種情況:
1.2.1有返回對(duì)象:
define('id',function(){
return {
// put your code here
}
});
1.2.2 沒(méi)有返回對(duì)象
define('id',function(){
// put your code here
});
二: 調(diào)用模塊用require()函數(shù)
2.1 根據(jù)請(qǐng)求的模塊數(shù),可以有兩情況:
2.1.1.調(diào)用單個(gè)模塊
require('modeId')
2.1.2.調(diào)用多個(gè)模塊
require(['modeA','modeB']);
2.2 根據(jù)是否有回調(diào)處理,又可以分為兩種情況:
2.2.1 有回調(diào)處理函數(shù)
require('modeId',function(mode){
//put your code here
});
require(['modeA','modeB'],function(A,B){
//put your code here
});
2.2.2 沒(méi)有回調(diào)處理
require('modeId');
然后在index.html頁(yè)面依次引用所需模塊
<!--核心模塊-->
<script src="lib/core/require.js"></script>
<!--用于演示的模塊-->
<script src="lib/main.js"></script>
<script src="lib/config.js"></script>
<script src="lib/init.js"></script>
最后就是用你喜歡的方式對(duì)lib目錄進(jìn)行合并壓縮,生成一個(gè)min.js文件。 在發(fā)布應(yīng)用的時(shí)候,相應(yīng)的index.html也需要調(diào)整一下:
<script src="lib/min.js"></script>
優(yōu)點(diǎn):
相對(duì)于seajs.js或原版的require.js來(lái)說(shuō),加注釋才一百來(lái)行的代碼用輕量來(lái)形容都顯胖,完全是骨感。
完全沒(méi)有什么高深的內(nèi)容,也沒(méi)有復(fù)雜的技巧,幾乎是零學(xué)習(xí)成本。
相關(guān)文章
JavaScript中極易出錯(cuò)的操作符運(yùn)算總結(jié)
這篇文章主要給大家介紹了關(guān)于JavaScript中極易出錯(cuò)的操作符運(yùn)算的相關(guān)資料,包括了算術(shù)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符、一元運(yùn)算符以及運(yùn)算優(yōu)先級(jí)等問(wèn)題,需要的朋友可以參考下2021-08-08javascript日期對(duì)象格式化為字符串的實(shí)現(xiàn)方法
本篇文章主要是對(duì)javascript日期對(duì)象格式化為字符串的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-01-01webpack實(shí)現(xiàn)一個(gè)行內(nèi)樣式px轉(zhuǎn)vw的loader示例
這篇文章主要介紹了webpack實(shí)現(xiàn)一個(gè)行內(nèi)樣式px轉(zhuǎn)vw的loader示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-09-09Js+Flash實(shí)現(xiàn)訪(fǎng)問(wèn)剪切板操作
最近需要遇到了這個(gè)問(wèn)題點(diǎn)擊按鈕復(fù)制鏈接的功能果斷度娘谷哥,最后找到得解決方案ZeroClipBoard一款開(kāi)源得js+Flash實(shí)現(xiàn)得剪切板操作2012-11-11