欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

為小程序添加自動更新功能

admin
2025年1月10日 22:13 本文熱度 22
《豆子碎片》小程序自動更新功能已經上線。當每次添加新文章時,不需要小程序重新升級就能更新文章列表內容的功能。

上篇文章我有說到,每次添加新文章內容時,就需要升級小程序才能更新新添加的內容。小程序的設計如下,在WXML文件中,使用for循環讀取文章列表,然后顯示每篇文章的標題。當點擊標題時,使用Navigate組件跳轉到文章詳情。而文章列表的數據是在JS文件中data對象中定義的文章數組,數組的每一項,都是一篇文章。
當我們添加新的文章內容時,就需要更新JS文件中的文章數組,添加這篇新添加的文章。如果要讓用戶能夠訪問到新的文章,就需要升級小程序。否則線上的JS文件不會更新。
如果我們把這些文章列表數據存儲在Git服務器上,當小程序打開時,從Git服務器下載文章列表數據文件,然后賦值到頁面文章列表中。我們通過修改Git服務器上的文章列表數據,那么拉取到的文章列表數據就是新的,這樣是不是就可以不升級小程序就可以獲取到最新的文章列表了?
當我們這樣調整之后,發現了一個新的問題,性能問題。首先,新文章不是每天都要發布的,所以小程序每次打開,都要從Git服務器下載文章列表數據文件,就有很多次的無用功,浪費了網絡流量。對于Git服務器和小程序而說,這也不是最高效的,其次,因為網絡請求是非常耗時的,所以打開小程序會感覺到卡頓,體驗不好。我們可以優化一下,使用本地存儲來存放下載到的文章列表數據文件。這樣當用戶每次打開小程序時,就不需要從Git服務器下載了。當用戶是第一次打開豆子碎片小程序,由于本地沒有文章列表數據,就需要從Git服務器下載,并同時存儲到小程序本地。這樣優化之后,可使小程序可以快速的被打開,并減少很多無用的網絡請求,節省網絡流量。
  // 下載 data.json 文件  dlArtData: function () {    const that = this;    // 下載數據動畫    wx.showLoading({      title: '數據加載中..',    })    wx.downloadFile({      url: 'https://gitee.com/littletow/visit/raw/master/content/data.json',      success(res) {        // console.log(res)        if (res.statusCode === 200) {          // 下載成功后,會存儲為臨時文件,需要使用微信API讀取文件內容。          const tmpfile = res.tempFilePath;          const fs = wx.getFileSystemManager()          fs.readFile({            filePath: tmpfile,            encoding: 'utf8',            success(res) {              // 取消動畫              wx.hideLoading({                success: (res) => {},              })              // console.log(res.data)              // 記錄到本地緩存              wx.setStorageSync('artData', res.data);              const dataList = utils.json2ObjArr(res.data);              that.globalData.artData = dataList;            },          })        }      }    })  },
這又帶來了一個新的問題,如果在Git服務器更新了文章列表數據文件,我(小程序)如何得知這個情況?一個解決方案是,每天拉取一次,不管有沒有實際更新,這樣可以保證有新的文章加入時,小程序可以獲取到新的文章內容。但是這不是最優解。我想到的另一個更好的方案是在Git服務器上存儲版本Version文件,每次進入小程序都要查看Git上的Version文件,然后和本地記錄的Version進行對比,如果Version有變更,那么重新拉取數據文件。本地就獲得了更新的文章列表數據內容。這樣做的好處是Version文件遠遠小于Data.json文件,下載會非常快,節省網絡流量,提高小程序的體驗。
  // 下載 article version 文件  dlArtVersion: function () {    const that = this;    // 下載版本號加載動畫    wx.showLoading({      title: '版本檢測中..',    })    wx.downloadFile({      url: 'https://gitee.com/littletow/visit/raw/master/content/VERSION',      success(res) {        // console.log(res)        if (res.statusCode === 200) {          // 下載成功后,會存儲為臨時文件,需要使用微信API讀取文件內容。          const tmpfile = res.tempFilePath;          const fs = wx.getFileSystemManager()          fs.readFile({            filePath: tmpfile,            encoding: 'utf8',            success(res) {              let now = Date.now();              wx.setStorageSync('chkVerTs', now);              // 取消動畫              wx.hideLoading({                success: (res) => {},              })              // console.log(res.data)              const onlineVersion = Number(res.data);              // 查看本地版本號              const artVer = wx.getStorageSync("artVer");              if (utils.isEmpty(artVer)) {                // 記錄到本地緩存                wx.setStorageSync('artVer', res.data);                // 下載文章數據                that.dlArtData();              } else {                const localVersion = Number(artVer);                // console.log('調試',localVersion,onlineVersion);                // 和線上進行對比,需要升級則重新下載數據                if (localVersion < onlineVersion) {                  // 下載文章數據                  that.dlArtData();                }              }            },          })        }      }    })  },
豆子碎片小程序可以使你快速搭建一個內容類小程序,你只需要編寫自己擅長的領域知識即可。記得,常回來看看,我會不定期進行更新喲,說不定有新的更新對你有用呢!
該項目的地址:
https://github.com/littletow/visit.git
https://gitee.com/littletow/visit.git
小程序演示地址:


閱讀原文:原文鏈接


該文章在 2025/1/11 18:20:47 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved