• 缓存promise技术不错哦


    1、 pageManager.js

    const promiseList = {};
    module.exports = {
      putData: function(pageName,data){
        promiseList[pageName] = data;
      },
      getData: function(pageName)
      {
        return promiseList[pageName];
      }
    }

    2、 util

    const fPromise = fn => obj =>{
      return new Promise((resolve,reject)=>{
        obj.complete = obj.success = res=>{
          resolve(res)
        }
        obj.fail = err =>{
          reject(err)
        }
        fn(obj);
      })
    }
    
    module.exports = {
      fPromise
    }

    3、使用   小程序跳转之前先请求数据,加快跳转页的数据加载速度。

    起始页:

    onNavigate: function(){
       const that = this;
       const promiseBoos = fPromise(wx.request)({
        url:'https://'
      }).then(function(res){
       return res.data;  
      });  
    },
    gotoPageC: function(){
        this.onNavigate();
        wx.navigateTo({url:'..pageC/index'});
    }

     跳转页:

    onLoad: function(){
       
        const bookPromise = pageManager.getData('getBooks');
        if (bookPromise)
       {
           const resData  = bookPromise.then(
                    function(data)
                    { 
                          console.log(“需要渲染的数据是:”,data):
                    },
                    function(){
                         console.log("初始化失败”);
                    } 
           )
       } 
    }  
  • 相关阅读:
    函数
    vue中v-for循环如何将变量带入class的属性名中
    代码规范 前端导航
    2019.8.5 mysql 删除 更新
    2019.8.1
    2019.7.31 Xshell简单学习
    日常使用知识点
    FormData实现文件多次添加累加上传和选择删除
    上传图片
    验证码
  • 原文地址:https://www.cnblogs.com/Mvloveyouforever/p/11414435.html
Copyright © 2020-2023  润新知