网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網

如意小程序開發實戰:實現九宮格界面的導航

發布時間:2017-11-27 17:38 所屬欄目:小程序開發教程

小程序是長在微信上的,是移動端的界面,為了能夠更方便的使用,我們常常希望使用九宮格界面的方式作為導航,那要如何實現呢?基于一個簡單的思考,九宮格就是三行三列,如果把行作為一個單 ...

 
 
 

小程序是長在微信上的,是移動端的界面,為了能夠更方便的使用,我們常常希望使用九宮格界面的方式作為導航,那要如何實現呢? 
基于一個簡單的思考,九宮格就是三行三列,如果把行作為一個單位,再將每一行分成三列,那是不是就可以了?我們實踐一下。 
首先來考慮九宮格數據的生成,每一個格子需要有一個圖標、一個標題、一個便于跳轉的路由,那天現在我們有九個頁面,所以定義一個一維數組即可。為了更好的進行后續的配置,我們將這個數組獨立到一個文件中routes.js,然后將其在index.js頁面中引用,routes放到index的目錄下。 
[javascript]

 

			
  1. var PageItems =
  2. [
  3. {
  4. text: '格子1',
  5. icon: '../../images/c1.png',
  6. route: '../c1/c1',
  7. },
  8. {
  9. text: '格子2',
  10. icon: '../../images/c2.png',
  11. route: '../c2/c2',
  12. },
  13. {
  14. text: '格子3',
  15. icon: '../../images/c3.png',
  16. route: '../c3/c3',
  17. },
  18. {
  19. text: '格子4',
  20. icon: '../../images/c4.png',
  21. route: '../c4/c4',
  22. },
  23. {
  24. text: '格子5',
  25. icon: '../../images/c5',
  26. route: '../c5/c5',
  27. },
  28. {
  29. text: '格子6',
  30. icon: '../../images/c6.png',
  31. route: '../c6/c6',
  32. },
  33. {
  34. text: '格子7',
  35. icon: '../../images/c7.png',
  36. route: '../c7/c7',
  37. },
  38. {
  39. text: '格子8',
  40. icon: '../../images/c8',
  41. route: '../c8/c8',
  42. },
  43. {
  44. text: '格子9',
  45. icon: '../../images/c9.png',
  46. route: '../c9/c9',
  47. }
  48. ];
  49. module.exports = {
  50. PageItems: PageItems
  51. }

在index.js頁面中我們引用routes.js,然后得到數據PageItems,但PageItems是一維數組,而我們前面思考是要用一行三列為一個組的,所以需要將這一維數組進行重新組合,最直接的方法就是生成一個數組,每個數組的元素又包含了一個只有三個元素的一維數組,代碼如下  [javascript]

 

			
  1. //index.js
  2. //獲取應用實例
  3. var app = getApp()
  4. var routes = require('routes');
  5. Page({
  6. data: {
  7. userInfo: {},
  8. cellHeight: '120px',
  9. pageItems: []
  10. },
  11. //事件處理函數
  12. onLoad: function () {
  13. var that = this
  14. console.log(app);
  15. //調用應用實例的方法獲取全局數據
  16. app.getUserInfo(function (userInfo) {
  17. wx.setNavigationBarTitle({
  18. title: '全新測試追蹤系統-' + userInfo.nickName,
  19. success: function (res) {
  20. // success
  21. }
  22. })
  23. that.setData({
  24. userInfo: userInfo
  25. })
  26. var pageItems = [];
  27. var row = [];
  28. var len = routes.PageItems.length;//重組PageItems
  29. len = Math.floor((len + 2) / 3) * 3;
  30. for (var i = 0; i < len; i++) {
  31. if ((i + 1) % 3 == 0) {
  32. row.push(indexs.PageItems[i]);
  33. pageItems.push(row);
  34. row = [];
  35. continue;
  36. }
  37. else {
  38. row.push(indexs.PageItems[i]);


易優小程序(企業版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/17956.html 復制鏈接 如需定制請聯系易優客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×