您好,登錄后才能下訂單哦!
一、目標(biāo)
1、提升開發(fā)速度
2、更好的響應(yīng)需求變化
二、面臨的問(wèn)題
業(yè)務(wù)需求的變化是永恒的,而變化勢(shì)必會(huì)引發(fā)代碼的變化,新增代碼或修改代碼。
改動(dòng)的地方越多,引入新的錯(cuò)誤幾率就越大。
三、應(yīng)對(duì)思路
最小化原則,確保每次業(yè)務(wù)需求變化可以用最小的代價(jià)來(lái)完成。
1、視圖模板化,組件化
2、邏輯代碼對(duì)象化、版本化
3、事件傳遞參數(shù)化、代理化
四、架構(gòu)模型
1、視圖
2、邏輯與事件通信
視圖層需要傳遞一組參數(shù)(對(duì)象名、方法名、方法需要的參數(shù))
五、代碼示例
//wxml代碼
<view
bindtap='bindViewEvent'
data-model="user"
data-method="sayhello"
data-text="hi,nihao">sayhello</view>
//js代碼,page頁(yè)里只有一個(gè)事件路由業(yè)務(wù)函數(shù)
bindViewEvent:function(e){
app.excute(this,e);
}
//app.js
/*
* 事件路由函數(shù)
*/
excute:function(that,e){
new umitech(that,this.config).extend(e);//動(dòng)態(tài)加載對(duì)象,并調(diào)用相關(guān)方法
}
github示例代碼
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。