真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

微信小程序如何實現(xiàn)數(shù)據(jù)交互與渲染

小編給大家分享一下微信小程序如何實現(xiàn)數(shù)據(jù)交互與渲染,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:主機域名、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、博羅網(wǎng)站維護、網(wǎng)站推廣。

微信小程序 數(shù)據(jù)交互與渲染

實現(xiàn)效果圖:

微信小程序如何實現(xiàn)數(shù)據(jù)交互與渲染

微信小程序的api中提供了網(wǎng)絡(luò)交互的api,我們只要調(diào)用即可和后端進行數(shù)據(jù)交互,該api為wx.request.,具體代碼如下。

//list.js 
//獲取應(yīng)用實例 
var app = getApp() 
Page({ 
 data: { 
  list:[], 
  hiddenLoading: true, 
  url: '' 
 }, 
 loadList: function () { 
  var that = this; 
  that.setData({ 
   hiddenLoading: !that.data.hiddenLoading 
  }) 
  var url = app.urls.CloudData.getList; 
  that.setData({ 
   url: url 
  }); 
  wx.request({ 
   url: url, 
   data: {}, 
   method: 'GET', 
   success: function (res) { 
    var list= res.data.list; 
    if (list == null) { 
     list = []; 
    } 
    that.setData({ 
     list: list, 
     hiddenLoading: !that.data.hiddenLoading 
    }); 
     wx.showToast({ 
     title: "獲取數(shù)據(jù)成功", 
     icon: 'success', 
     duration: 2000 
    }) 
   }, 
   fail: function (e) { 
    var toastText='獲取數(shù)據(jù)失敗' + JSON.stringify(e); 
    that.setData({ 
     hiddenLoading: !that.data.hiddenLoading 
    }); 
    wx.showToast({ 
     title: toastText, 
     icon: '', 
     duration: 2000 
    }) 
   }, 
   complete: function () { 
    // complete 
   } 
  }), 
 //事件處理函數(shù) 
 bindViewTap: function () { 
  wx.navigateTo({ 
   url: '../logs/logs' 
  }) 
 }, 
 onLoad: function () { 
 
 }, 
 onReady: function () { 
  this.loadList(); 
 }, 
 onPullDownRefresh: function () { 
  this.loadList(); 
  wx.stopPullDownRefresh() 
 } 
})

在loadList函數(shù)中進行了網(wǎng)絡(luò)請求,請求的數(shù)據(jù)放到了data的list中。我們使用setData來修改list,在該函數(shù)調(diào)用之后,微信小程序的框架就會判斷數(shù)據(jù)狀態(tài)的變化,然后進行diff判斷,如果有變化就渲染到界面中。這個與react.js的渲染方式相似,主要是內(nèi)部維護了一個類似于虛擬文檔的對象,然后通過對虛擬文檔的判斷來呈現(xiàn)界面,這樣可以大大提高性能。

這里我們還做了一個下拉刷新的觸發(fā),即onPullDownRefresh函數(shù),為了能夠使用下拉刷新,我們需要進行配置,現(xiàn)在我們只需要當前頁面生效,所以只要在對應(yīng)頁的json中配置即可,即在list.json中配置。

list.json

{ 
  "navigationBarTitleText": "產(chǎn)品列表",   
  "enablePullDownRefresh":true 
}

如果需要所有的頁面的生效,可以在app.json中的window中配置。

app.json

{ 
 "pages":[ 
  "pages/index/index", 
  "pages/logs/logs", 
  "pages/list/list" 
 ], 
 "window":{ 
  "backgroundTextStyle":"light", 
  "navigationBarBackgroundColor": "#fff", 
  "navigationBarTitleText": "WeChat", 
  "navigationBarTextStyle":"black", 
  "enablePullDownRefresh":true 
 } 
}

在app.json中,還有一個pages,我們需要路由的頁面都需要在這里注冊,否則無法路由到。

在請求數(shù)據(jù)的時候,加入了等待和獲取成功失敗的提示。這需要相應(yīng)的頁面配合,頁面代碼list.wxm.如下

 
 
  
 正在加載 
  
   
    
     
      
      {{item.no}}({{item.content}}) 
      
     
    
   
  
/**list.wxss**/ 
 
.widget { 
 position: relative; 
 margin-top: 5rpx; 
 margin-bottom: 5rpx; 
 padding-top: 10rpx; 
 padding-bottom: 10rpx; 
 padding-left: 40rpx; 
 padding-right: 40rpx; 
 border: #ddd 1px solid; 
}
/**app.wxss**/ 
.container { 
 height: 100%; 
 display: flex; 
 flex-direction: column; 
 align-items: center; 
 justify-content: space-between; 
 box-sizing: border-box; 
 padding-top: 10rpx; 
 padding-bottom: 10rpx; 
}

以上是“微信小程序如何實現(xiàn)數(shù)據(jù)交互與渲染”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


本文題目:微信小程序如何實現(xiàn)數(shù)據(jù)交互與渲染
分享URL:http://weahome.cn/article/pdhhjj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部