亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解小程序緩存插件(mrc)

 更新時間:2018年08月17日 10:08:41   作者:jayzou  
這篇文章主要介紹了詳解小程序緩存插件(mrc),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

背景

wx.request是小程序提供的API,用于發(fā)起網(wǎng)絡(luò)請求,在頻繁并且響應(yīng)較慢的業(yè)務(wù)中的請求,頁面白屏或者loading時間也相應(yīng)比較長,然而合理的利用緩存是個很好提升界面響應(yīng)速度,減少網(wǎng)絡(luò)資源占用的手段。

mrc提供2種換成模式用于業(yè)務(wù)中使用

短期緩存

對于實時性要求相對較低的業(yè)務(wù)場景而言,可以使用短期緩存。

短期緩存能夠?qū)⒔涌跀?shù)據(jù)在一定時間內(nèi)緩存起來,在時間范圍內(nèi)再次請求的話,可以直接使用緩存數(shù)據(jù),減少白屏或者loading時間。設(shè)置不同的緩存時間來適應(yīng)不同的業(yè)務(wù),還可以有效的節(jié)約網(wǎng)絡(luò)資源

快照緩存

類比搜索引擎的快照,針對請求響應(yīng)較慢的并且實時性又比較高的場景而言,可以使用快照緩存。

快照緩存每次請求都會先返回上一次緩存數(shù)據(jù)作為結(jié)果返回,然后再去請求,等到請求返回之后再更新緩存,業(yè)務(wù)方可以對比2次返回結(jié)果進行局部渲染

使用

mrc以一種侵入式最小的方式封裝了原生的resquest API,擴展原生API的功能,可以支持promise以及2種緩存方式。

//app.js

//引入request緩存插件
import Mrc from './dist/mrc.min';

//實例化一個全局引用
App({
 wxp: new Mrc({
  prefix: '___CACHE___',   //選填,存儲字段前綴,默認___CACHE___
  timeout: 600000,    //選填,緩存多長時間,單位ms,默認10分鐘
 }),
})
//page.js
const app = getApp()
let {wxp} = app
Page({
 data: {

 },
 onLoad: function () {
  wxp.request({
   url: 'http://xxxxxx',
   cache: {
    enable: true,    //選填,是否開啟緩存,默認false
    type: 'snapshot',   //選填,開啟緩存類型,定時(timeout)、快照(snapshot),默認定時
    timeout: 600000,    //選填,定時緩存時間,使用優(yōu)先級,當前配置>全局配置>默認配置
   },
  })
   .then((res) => {
    //快照緩存時會多返回一個正式請求的promise對象,用于獲取正式請求的數(shù)據(jù)
    return res.req;
   })
   .then((res) => {
    console.log(res);

   })
 },
})

特性

  1. 緩存類型為快照緩存時,緩存的數(shù)據(jù)為持久緩存,timeout設(shè)置無效
  2. 緩存類型為快照緩存時,第一個then回調(diào)會帶上正式請求的promise對象,用于下個then回調(diào)獲取正式請求的數(shù)據(jù)
  3. 不想使用緩存時(enable=false),一樣可以用mrc實例化之后的對象正常請求,支持promise

對比

類型 是否持久化 是否每次都請求 實時性
快照緩存
短期緩存

配合骨架屏來使用效果更佳?。。?br />

總結(jié)

緩存插件的使用可以有效的提升頁面打開速度,并且在頻繁的網(wǎng)絡(luò)請求中可以有效的節(jié)約服務(wù)器資源。具體的調(diào)用方式和源碼,請看 github ,最后求start

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • TypeScript中Getter/Setter用法詳解

    TypeScript中Getter/Setter用法詳解

    getter使我們能夠?qū)傩越壎ǖ皆谠L問屬性時調(diào)用的函數(shù),而setter將屬性綁定到在嘗試設(shè)置屬性時調(diào)用的函數(shù),下面就跟隨小編來看看TypeScript中Getter/Setter的用法吧
    2024-10-10
  • 前端使用minio傳輸文件的代碼及拓展

    前端使用minio傳輸文件的代碼及拓展

    MinIO是一款基于Go語言的高性能對象存儲服務(wù),非常適合于存儲大容量非結(jié)構(gòu)化的數(shù)據(jù),例如圖片、視頻、日志文件、備份數(shù)據(jù)和容器/虛擬機鏡像等,這篇文章主要給大家介紹了關(guān)于前端使用minio傳輸文件的相關(guān)資料,需要的朋友可以參考下
    2024-07-07
  • Javascript實現(xiàn)簡單二級下拉菜單實例

    Javascript實現(xiàn)簡單二級下拉菜單實例

    這篇文章主要介紹Javascript實現(xiàn)二級下拉菜單的具體過程,需要的朋友可以參考下
    2014-06-06
  • echarts拖拽滑塊dataZoom-slider自定義樣式簡單適配移動端

    echarts拖拽滑塊dataZoom-slider自定義樣式簡單適配移動端

    在電腦端和移動端的數(shù)據(jù)展示中,針對移動端的特殊性,進行了一系列優(yōu)化措施,這篇文章主要介紹了echarts拖拽滑塊dataZoom-slider自定義樣式簡單適配移動端的相關(guān)資料,需要的朋友可以參考下
    2024-09-09
  • JavaScript中對象property的讀取和寫入方法介紹

    JavaScript中對象property的讀取和寫入方法介紹

    這篇文章主要介紹了JavaScript中對象property的讀取和寫入方法介紹,本文講解了原型繼承鏈中property的讀取、原型繼承鏈中property的寫入等內(nèi)容,需要的朋友可以參考下
    2014-12-12
  • JavaScript實現(xiàn)文字展開和收起效果

    JavaScript實現(xiàn)文字展開和收起效果

    這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)文字展開和收起效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • js腳本獲取webform服務(wù)器控件的方法

    js腳本獲取webform服務(wù)器控件的方法

    asp.net webform中獲取服務(wù)器控件,js腳本獲取服務(wù)器控件需要使用ClientID,下面有個示例,大家可以參考下
    2014-05-05
  • 擁有一個屬于自己的javascript表單驗證插件

    擁有一個屬于自己的javascript表單驗證插件

    這篇文章主要幫助大家擁有一個屬于自己的javascript表單驗證插件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-03-03
  • JavaScript實現(xiàn)簡單的Markdown語法解析器

    JavaScript實現(xiàn)簡單的Markdown語法解析器

    Markdown 是一種輕量級標記語言, 它允許人們使用易讀易寫的純文本格式編寫文檔,然后轉(zhuǎn)換成有效的 XHTML(或者HTML)文檔。本文將利用JavaScript實現(xiàn)簡單的Markdown語法解析器,感興趣的可以了解一下
    2023-03-03
  • 微信小程序?qū)崿F(xiàn)的3d輪播圖效果示例【基于swiper組件】

    微信小程序?qū)崿F(xiàn)的3d輪播圖效果示例【基于swiper組件】

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)的3d輪播圖效果,結(jié)合實例形式分析了微信小程序基于swiper組件相關(guān)屬性設(shè)置、事件響應(yīng)操作技巧,需要的朋友可以參考下
    2018-12-12

最新評論