• 【小程序】使用uni-app搭建小程序环境---页面刷新问题


    一、页面跳转后刷新

    页面逻辑:我的页面 点击头像---登录弹窗---点击去登录---登录后跳转到我的页面

    存在的问题:没有加载我的页面接口

    解决方案:

    uni.switchTab({
        url: this.backurl,
        success(){
            let page = getCurrentPages().pop();  //跳转页面成功之后                                        
            console.log(getCurrentPages(),page);
            if (!page) return;                               
            page.onLoad(); //如果页面存在,则重新刷新页面
         }
    })

     二、情景描述:

      从页面A跳转到页面B 

      B页面接收A页面传递的参数

      B页面点赞操作,

      从B页面返回到A页面  A页面数据同步

    解决方案: 在B页面设置一个刷新页面的标识   A页面识别标识后更新数据

    B页面

    onLoad(e) {
        this.cid = e.cid;
        this.getList();
        var pages = getCurrentPages();//函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
        var prevPage = pages[pages.length - 2]; //上一个页面
        console.log(prevPage);
        //直接调用上一个页面的setData()方法,把数据存到上一个页面中去
        prevPage.setData({
            isDoRefresh:true
        })
            
    },

    A页面

    onShow() {
        let pages = getCurrentPages();
        let currPage = pages[pages.length-1];
        if (currPage.data.isDoRefresh == true){
            currPage.data.isDoRefresh = false;
            this.init();
        }
    },
    //onLoad(从B页面返回A页面不会执行)
    //    监听页面加载,
    //    其参数为上个页面传递的数据,参数类型为Object(用于页面传参),    
    //onShow(从B页面返回A页面执行)
    //监听页面显示。页面每次出现在屏幕上都触发,包括从下级页面点返回//露出当前页面
  • 相关阅读:
    2020了,初/中级前端面试你应该知道的(上)
    Vue页面权限控制和动态添加路由
    Javascript获取数组中最大和最小值
    localStorage和cookie的跨域解决方案
    移动端常见问题汇总
    码云git本地仓库链接远程仓库
    IntelliJ IDEA Activation code亲测可用
    Sping4之注入参数
    Sping4之依赖注入
    Spring核心之IOC
  • 原文地址:https://www.cnblogs.com/websmile/p/11950409.html
Copyright © 2020-2023  润新知