最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2017年01月21日 14:14:48   投稿:lqh  
這篇文章主要介紹了微信小程序 數(shù)據(jù)交互與渲染實例詳解的相關資料,需要的朋友可以參考下

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

實現(xiàn)效果圖:

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

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

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

list.json

{ 
  "navigationBarTitleText": "產品列表",   
  "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ù)的時候,加入了等待和獲取成功失敗的提示。這需要相應的頁面配合,頁面代碼list.wxm.如下

<!--list.wxml--> 
<view class="container container-ext"> 
 <!--默認隱藏--> 
 <loading hidden="{{hiddenLoading}}">正在加載</loading> 
 <scroll-view scroll-y="true"> 
  <view> 
   <block wx:for="{{list}}" wx:key="no"> 
    <view class="widget"> 
     <view> 
      <text >{{item.no}}({{item.content}})</text> 
     </view> 
    </view> 
   </block> 
  </view> 
 </scroll-view> 
</view> 

/**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; 
} 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • 微信小程序 Video API實例詳解

    微信小程序 Video API實例詳解

    這篇文章主要介紹了 微信小程序 Video API實例詳解,需要的朋友可以參考下
    2016-10-10
  • 在微信小程序中渲染HTML內容3種解決方案及分析與問題解決

    在微信小程序中渲染HTML內容3種解決方案及分析與問題解決

    在開發(fā)微信小程序時我們會在小程序內加入純HTML代碼,且HTML中包括圖片,視頻,甚至是事件,微信小程序為我們提供了3種解決方法,但它們的功能與實現(xiàn)方式與最終效果并不理想
    2020-01-01
  • jQuery幻燈片插件owlcarousel參數(shù)說明中文文檔

    jQuery幻燈片插件owlcarousel參數(shù)說明中文文檔

    jQuery幻燈片插件owlcarousel是一個小巧強大兼容性強的幻燈片插件,兼容IE6以上所有瀏覽器,本文主要介紹了字的使用方法與中文參數(shù)與API說明
    2018-02-02
  • 一文了解什么是TypeScript?

    一文了解什么是TypeScript?

    這篇文章主要介紹了什么是TypeScript,TypeScript是JavaScript的超集,它可以編譯成純JavaScript代碼,TypeScript可以運行在瀏覽器環(huán)境、Node.js環(huán)境或者ECMAScript3或者更高的JavaScript的引擎中,下面我們就進入文章一起學習TypeScript的詳細內容吧
    2021-12-12
  • 微信小程序 設置啟動頁面的兩種方法

    微信小程序 設置啟動頁面的兩種方法

    這篇文章主要介紹了 微信小程序 設置啟動頁面的方法的相關資料,這里對設置啟動頁面的兩種方法分別介紹,需要的朋友可以參考下
    2017-03-03
  • js?字符串中文下對齊問題解析

    js?字符串中文下對齊問題解析

    這篇文章主要為大家介紹了js字符串含中文下對齊問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • JavaScript實現(xiàn)一個Promise隊列小工具

    JavaScript實現(xiàn)一個Promise隊列小工具

    這篇文章主要介紹了JavaScript實現(xiàn)一個Promise隊列小工具,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08
  • 微信小程序搜索組件wxSearch實例詳解

    微信小程序搜索組件wxSearch實例詳解

    這篇文章主要介紹了微信小程序搜索組件wxSearch實例詳解的相關資料,需要的朋友可以參考下
    2017-06-06
  • JavaScript數(shù)組 幾個常用方法總結

    JavaScript數(shù)組 幾個常用方法總結

    這篇文章主要介紹了JavaScript數(shù)組 幾個常用方法,主要概述的方法有filter()、map()、sort()、reduce()、forEach(),這些方法都是JavaScript常用到的方法,下面文章內容詳細介紹了他們的語法、參數(shù)、返回值等資料,需要的朋友可以參考一下
    2021-11-11
  • 微信小程序中使元素占滿整個屏幕高度實現(xiàn)方法

    微信小程序中使元素占滿整個屏幕高度實現(xiàn)方法

    這篇文章主要介紹了微信小程序中使元素占滿整個屏幕高度實現(xiàn)方法的相關資料,需要的朋友可以參考下
    2016-12-12

最新評論

新巴尔虎左旗| 蒲城县| 扎兰屯市| 盐亭县| 潼南县| 深州市| 中西区| 竹溪县| 辛集市| 桐城市| 广东省| 昭通市| 陇南市| 峨眉山市| 西城区| 靖江市| 霍邱县| 松江区| 社会| 望都县| 府谷县| 阿瓦提县| 平果县| 莆田市| 南皮县| 富顺县| 上饶县| 交口县| 高台县| 长宁区| 德格县| 朝阳区| 汕头市| 宣汉县| 壶关县| 衢州市| 德保县| 大兴区| 集安市| 浦城县| 沙洋县|