目前,微信給每個小程式提供了10M的本地快取空間(哎喲媽呀好大)
有了本地緩存,你的小程式可以做到:
離線應(yīng)用程式(已測試在無網(wǎng)路的情況下,可以操作快取資料)
流暢的使用者體驗
減少網(wǎng)路請求,節(jié)省伺服器資源
#哪些資料適合方快?。?/p>
-
熱數(shù)據(jù)
靜態(tài)數(shù)據(jù)(用戶數(shù)據(jù),伺服器授權(quán)ID等)
網(wǎng)路位址(圖片、檔案等網(wǎng)路位址)
分頁清單資料及詳情內(nèi)容
#一般的快取系統(tǒng)採用鍵值對的方式完成資料插入與讀取,透過對key進(jìn)行一次Hash演算法得到一個唯一值,並與value綁定起來;查詢的時候?qū)Ω鶕?jù)Hash後的key查詢,演算法空間複雜度O(1);
小程式本地快取的實作是基於上述方式實作。但資料究竟是儲存在ROM,還是儲存在RAM後進(jìn)行持久化,這個問題有待考究。
對本機快取資料操作分為同步和非同步兩種。同步方法有成功回呼函數(shù),表示數(shù) 根據(jù)處理成功後的運算。以下是小程式提供本機快取操作介面:
作業(yè) | 非同步方法 | 同步方法 |
---|---|---|
插入 | wx.setStorage | wx.setStorageSync |
讀取 | wx.getStorage | wx.getStorageSync |
刪除 | wx.removeStorage | wx.removeStorageSync |
#清除 | wx.clearStorage | wx.clearStorageSync |
- #以Sync結(jié)尾都是同步方法。同步方法和非同步方法的差異是:
- 同步方法會堵塞目前任務(wù),直到同步方法處理返回。
非同步方法不會塞目前任務(wù)。
6.下面以插入快取的兩個方法說明同步和非同步的差異:
1. 先呼叫非同步方法,再呼叫同步方法
Page({save: function(e){console.log('開始保存')wx.setStorage({ key: 'key1', data: 'data1', success: function(res){ console.log('異步保存成功') }})wx.setStorageSync('key2', 'data2')console.log('同步保存成功') }})
執(zhí)行結(jié)果:
可以看出,同步方法比非同步方法先保存成功,說明非同步方法沒有阻塞目前任務(wù)。
1.先呼叫同步方法,再呼叫非同步方法
Page({save: function(e){console.log('開始保存')wx.setStorageSync('key2', 'data2')console.log('同步保存成功')wx.setStorage({ key: 'key1', data: 'data1', success: function(res){ console.log('異步保存成功') }}) }})
可以看出,非同步方法只有等到同步方法執(zhí)行成功才會執(zhí)行。
- 快取
- API
提供了一個取得本機快取資訊的介面wx.getStorageInfo,有了它,開發(fā)者可以在已有api上再次封裝,例如加入快取時間、不覆蓋插入、批次刪除、判斷目前快取大小等。
最後一個是快取隔離等級的問題: - 同一手機,不同小程式應(yīng)用,至少在邏輯儲存上肯定不是共享緩存,滿足應(yīng)用程式層級隔離。
- 同一手機,同一個小程序,不同微信用戶掃碼使用,經(jīng)測試,也不共享緩存,目前測試條件下,是用戶級別隔離。
- 同一手機,同一個小程式,同一微信用戶兩次掃碼使用,經(jīng)過測試,是共享快取。
同一手機,同一個小程式,不同微信用戶切換使用(分別掃碼兩次),經(jīng)測試,同一個用戶共享緩存,不同用戶間不共享緩存。
偵錯條件下,每個小程式掃碼使用者都會指派10M的本機快取。 以上是個人在真機測試得到的結(jié)果,結(jié)果不一定完全準(zhǔn)確,僅供參考。
微信公眾號平臺源碼下載小豬cms(PigCms)微電商系統(tǒng)營運版(獨立微店商城+三級分銷系統(tǒng))#########3.?###微信人脈王v3.4.5高階商業(yè)版微信魔術(shù)方塊源碼##################################################以上是微信開發(fā)入門(九)本地緩存的詳細(xì)內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP是一種開源的腳本語言,廣泛應(yīng)用於網(wǎng)頁開發(fā)和伺服器端編程,尤其在微信開發(fā)中得到了廣泛的應(yīng)用。如今,越來越多的企業(yè)和開發(fā)者開始使用PHP進(jìn)行微信開發(fā),因為它成為了真正的易學(xué)易用的開發(fā)語言。在微信開發(fā)中,訊息的加密和解密是一個非常重要的問題,因為它們涉及資料的安全性。對於沒有加密和解密方式的消息,駭客可以輕鬆取得其中的數(shù)據(jù),對用戶造成威脅

如何避免Localstorage資料遺失?隨著Web應(yīng)用程式的發(fā)展,資料的持久化成為了一個重要的議題。而Localstorage是一種非常常用的瀏覽器所提供的資料持久化方案。但是,由於各種原因,LocalStorage中儲存的資料有可能會遺失。本文將介紹幾種避免LocalStorage資料遺失的方法,並提供具體的程式碼範(fàn)例。一、定期備份資料定期備份資料是避免Lo

在微信公眾號開發(fā)中,投票功能經(jīng)常被運用。投票功能是讓使用者快速參與互動的好方式,也是舉辦活動和調(diào)查意見的重要工具。本文將為您介紹如何使用PHP實作微信投票功能。在取得微信公眾號授權(quán)首先,你需要取得微信公眾號的授權(quán)。在微信公眾平臺上,你需要設(shè)定微信公眾號碼的api地址、官方帳號和公眾號碼對應(yīng)的token。在我們使用PHP語言開發(fā)的過程中,我們需要使用微信官方提供的PH

隨著微信的普及,越來越多的企業(yè)開始將其作為行銷工具。而微信群發(fā)功能,則是企業(yè)進(jìn)行微信行銷的重要手段之一。但是,如果只依靠手動發(fā)送,對於行銷人員來說是一件極為費時費力的工作。所以,開發(fā)一款微信群發(fā)工具就顯得格外重要。本文將介紹如何使用PHP開發(fā)微信群發(fā)工具。一、準(zhǔn)備工作開發(fā)微信群發(fā)工具,我們需要掌握以下幾個技術(shù)點:PHP基礎(chǔ)知識微信公眾平臺開發(fā)開發(fā)工具:Sub

微信是目前全球用戶規(guī)模最大的社群平臺之一,隨著行動網(wǎng)路的普及,越來越多的企業(yè)開始意識到微信行銷的重要性。在進(jìn)行微信行銷時,客服服務(wù)是至關(guān)重要的一環(huán)。為了更好地管理客服聊天窗口,我們可以藉助PHP語言進(jìn)行微信開發(fā)。一、PHP微信開發(fā)簡介PHP是一種開源的伺服器端腳本語言,廣泛用於Web開發(fā)領(lǐng)域。結(jié)合微信公眾平臺提供的開發(fā)接口,我們可以使用PHP語言進(jìn)行微信

在微信公眾號開發(fā)中,使用者標(biāo)籤管理是一個非常重要的功能,可以讓開發(fā)者更了解和管理自己的使用者。本篇文章將介紹如何使用PHP實作微信使用者標(biāo)籤管理功能。一、取得微信用戶openid在使用微信用戶標(biāo)籤管理功能之前,我們首先需要取得用戶的openid。在微信公眾號開發(fā)中,透過使用者授權(quán)的方式取得openid是比較常見的做法。在使用者授權(quán)完成後,我們可以透過以下程式碼取得用

隨著微信成為了人們生活中越來越重要的通訊工具,其敏捷的訊息傳遞功能迅速受到廣大企業(yè)和個人的青睞。對企業(yè)而言,將微信發(fā)展為一個行銷平臺已經(jīng)成為趨勢,而微信開發(fā)的重要性也逐漸凸顯。在其中,群發(fā)功能更是被廣泛使用,那麼,作為PHP程式設(shè)計師,如何實現(xiàn)群發(fā)訊息發(fā)送記錄呢?以下將為大家簡單介紹一下。 1.了解微信公眾號相關(guān)開發(fā)知識在了解如何實現(xiàn)群發(fā)訊息發(fā)送記錄之前,我

如何使用PHP實現(xiàn)微信公眾號開發(fā)微信公眾號已經(jīng)成為了許多企業(yè)推廣和互動的重要管道,而PHP作為常用的Web語言,也可以用來進(jìn)行微信公眾號的開發(fā)。本文將介紹使用PHP實現(xiàn)微信公眾號開發(fā)的具體步驟。第一步:取得微信公眾號的開發(fā)者帳號在開始微信公眾號開發(fā)之前,需要先去申請一個微信公眾號的開發(fā)者帳號。具體的註冊流程可參考微信公眾平臺的官方網(wǎng)
