1. 程式人生 > >使用APICloud編寫優雅的HTML5程式碼《一》:下拉重新整理、上拉載入更多

使用APICloud編寫優雅的HTML5程式碼《一》:下拉重新整理、上拉載入更多

摘要: 發​現​A​P​I​C​l​o​u​d​倡​導​符​合​C​M​D​以​及​A​M​D​規​範​的​J​S​編​碼​標​準​,​提​供​基​於​H​T​M​L​5​的​跨​平​臺​A​p​p​編​譯​,​並​開​放​大​量​的​端​A​P​I​和​雲​A​P​I​,​輔​助​A​p​p​開​發​及​運​營​,​雲​端​並​重​,​方​向​很​是​新​穎​。​特​此​分​享​相​關​研​究​成​果,持​續​更​新​中​。

一、實現下拉重新整理:

預設樣式->程式碼清晰簡潔明瞭,符合ECMA262規範的callback,最少只需5行程式碼:

apiready = function
(){
api.setRefreshHeaderInfo(function(ret, err){ //refresh event callback toDoRequest(); }); } //do ajax function toDoRequest(){ // GET、POST、PUT、DELETE、… api.ajax({ url:'http://xxx.xxx.xxx' }, function(ret, err){ api.refreshHeaderLoadDone(); //復位下拉重新整理
//do your business }); }

自定義樣式->引數靈活可自由定義,非必選,實現自定義下拉重新整理頭的資訊:

apiready = function(){
    var param = {};
    param.loadingImgae = 'widget://image/refresh.png'; //定義重新整理小箭頭的圖片
    param.bgColor = '#ccc';                            //定義下拉重新整理區域的背景
    param.textColor = '#fff';                          //定義下拉重新整理提示文字的顏色
param.textDown = '下拉試試...'; //定義下拉重新整理文字 param.textUp = '鬆開試試...'; //定義鬆開重新整理文字 param.showTime = true; //定義是否顯示最後一次重新整理時間 api.setRefreshHeaderInfo(param, function(ret, err){ toDoRequest(); }); } function toDoRequest(){ api.ajax({ url:'http://xxx.xxx.xxx' }, function(ret, err){ api.refreshHeaderLoadDone(); //復位下拉重新整理 //do your business }); }

二、實現載入更多:

通過監聽頁面滾動到底部事件來實現:

apiready = function(){
    api. addEventListener({name:'scrolltobottom'}, function(ret, err){
        //refresh event callback
        toDoRequest();
    });
}

//do ajax
function toDoRequest(){
    // GET、POST、PUT、DELETE、…
    api.ajax({
        url:'http://xxx.xxx.xxx'
    }, function(ret, err){
        //do your business
    });
}

從介面規範上看,APICloud開放的端API簡潔明瞭,效率高,規範、語義明確。極大提高了開發人員的工作效率,以及程式碼的可讀性、維護性、擴充套件性。