資料常用於**?
如何使用非同步介面進行資料快取?
將資料儲存在本地快取中指定的key中,會覆蓋掉原來該key對應的內容,這是乙個非同步介面。
object引數說明:
示例**
wx.setstorage()
當 setstorage 之後可以去到開發者工具裡面檢視 這是沒有儲存值的情況
可以看到是沒有 key
值的 那麼當我們去進行輸入搜尋
最後再去 storage
中檢視
獲取到了乙個 key 為 history 的 array
陣列 那麼再去看看storage
得到了乙個陣列而且沒有被覆蓋,那麼怎麼實現的呢? 先來看看js**
search.js
設定data
data: )
if(that.data.history.length==0));
}else)}},
fail: function(res)
});},
進行搜尋和快取資料到storage中
search:function(e));
this.setdata()
}else if(temp))
this.setdata()}}
},將 storage 中的 key 值設為 hisotry
wx.setstorage()
},返回得到 history 之後再去將 inputsearch 的值新增到 history 中
這裡有個誤區可能你會將輸入的值inputsearch push到乙個新的空陣列,然後再將這個新陣列push到history陣列中,但這個方法顯然不可行,你新增之後新陣列將會存放在history陣列的第乙個下標的陣列下,對於history陣列也就只有兩個值
好了,回到我要說的,那麼如何將 inputsearch 新增到 history 中呢,可以使用 unshift 方法或者 push 方法,這裡應該使用 unshift 應該將每個新增值存放在 history 的第乙個位置,這是其實就是乙個使用者體驗問題了
var that =this;
var sear =this.data.inputsearch;
this.data.history.unshift(sear);
wx.setstorage()
console.log(res.data);
},})
好了,這樣就不會出現「覆蓋掉」原來的 key 值的問題了
微信小程式 資料快取
官方文件 wx.getstorage.wx.setstoragesync和wx.setstorage 以sync結尾的是同步的方法,其它的是非同步的方法 舉幾個非同步的方法為例 將資料儲存在本地快取中指定的 key 中。會覆蓋掉原來該 key 對應的內容。除非使用者主動刪除或因儲存空間原因被系統清理...
微信小程式 API 資料快取
wx.setstorage 將資料儲存在本地快取中制定的 key 中。會覆蓋掉原來該 key 對應的內容,資料儲存生命週期跟小程式本身一致,即除使用者主動刪除或超過一定時間被自動清理,否則資料都一直可用,單個key 允許儲存的最大資料長度為 1mb,所有資料儲存上限為 10mb 引數 物件 物件上的...
微信小程式元件教程
將頁面內的功能模組抽象成自定義元件,以便在不同的頁面中重複使用 也可以將複雜的頁面拆分成多個低耦合的模組,有助於 維護。自定義元件由 json wxml wxss js 4個檔案組成 首先需要在 json 檔案中進行自定義元件宣告,將 component 設為 true.json 檔案 compon...