隔了很久才終於又發佈了一點東西,SmartJS是最近纔開始搞的一個開源js庫,目的是作一些比較有特色的事情(smartjs暫時也是依賴於jquery)。html
SmartJS的內容規劃比較多,也沒法在短期所有完成,目前就以小版本一個個功能累加。前端
第一期0.1版發佈的內容主要是實現前端面向切面編程(AOP)的一些支持。jquery
1. PromiseEventgit
基於事件和promise的回調管理,相似於jquery的callbacks,但具備結果傳遞,優先級,事件參數,promise控制等功能github
2. Trigger編程
觸發器,在對象上應用觸發器(aop)功能,目標對象會具備方法注入功能(基於promiseEvent),注入的類型有before,after和round環繞三種;api
3. FlowControllerpromise
流程/生命週期控制器,控制流程的執行和流轉,基於Triggeroop
4. 經常使用方法;測試
//合併默認數據方法,將obj中空的內容從defObj中複製;與jquery的$.extend不通,只會加入不存在的數據
st.mergeObj(deep, obj, defObj, exclude)
//在目標對象方法中注入方法,返回結果
st.injectFn(target, name, fn, before,stopOnFalse)
//合併方法,返回結果
st.mergeFn(fn, mergeFn,stopOnFalse)
另外聲明一下,十分抱歉,之前承諾的smartUI2.0一直沒有完成,想法一直在變,並且這兩年發現本身能支配的時間也愈來愈少。不過smartjs後續規劃中也會有ui方面的內容,也至關於將smartUI並於Smartjs中。
後期預告:smartjs 0.2版中,會加入oop支持的一些內容。
最後附上地址smart地址,裏面有比較豐富的測試用例,api的話後續會更新博客逐一說明。