微信小程序 初始化页面时无法从index跳转到init页面

问题描述

程序流程:通过getStorage来检查是否第一次运行,是第一次运行则跳转init的page,不是则保持。

出现问题:在第一次运行的条件下,在iOS上可以检测到小程序是第一次运行,能跳转到init页面;在安卓上无法跳转,在index保持不变。

解决方案

由于带Sync的异步函数会回调,一些时候的代码是必须先执行某一块才能往下执行,不然会影响正常的代码执行逻辑。

将index的getStorageSync函数改为getStorage,安卓端小程序成功进入到init界面,iOS无影响。

代码区域

修改之后的代码

var data=wx.getStorageSync('lock');
    console.log(data);
    if (data=="") {
      //第一次运行
      console.log("第一次运行");
      wx.redirectTo({
        url: '/pages/init/init'
      });
    }else{
      //非第一次运行,读取数据
      console.log("非第一次运行");
      wx.getStorage({
        key:"myclasses",
        success(res){
          a.setData({
            wlist:res.data
          });
        }
      });
      wx.getStorage({
        key:"class",
        success(res){
          wx.setNavigationBarTitle({
            title: res.data,
          })
        }
      });
      loadAD();
    }

 

如果有帮助到你了

就请点个赞哇~

微信小程序中,打印页面路径可以帮助开发者调试和监控页面跳转路径。以下是几种常见的方法: 1. **使用 `console.log` 打印页面路径**: 在每个页面的 `onLoad` 方法中,使用 `console.log` 打印当前页面的路径。 ```javascript Page({ onLoad: function(options) { console.log('当前页面路径:', this.route); } }); ``` 2. **使用全局数据存储页面路径**: 在 `app.js` 中定义一个全局数组来存储页面路径,并在每个页面的 `onShow` 方法中添加当前路径。 ```javascript // app.js App({ onLaunch: function() { this.globalData.pagePathList = []; }, globalData: { pagePathList: [] } }); ``` ```javascript // 某个页面 Page({ onShow: function() { const app = getApp(); app.globalData.pagePathList.push(this.route); console.log('页面路径列表:', app.globalData.pagePathList); } }); ``` 3. **使用第三方工具或库**: 有些第三方工具或库可以帮助开发者更方便地记录和管理页面路径。例如,使用 `wx-report` 库来上报页面路径。 ```javascript // 安装 wx-report 库 // npm install wx-report // 在 app.js 中初始化 const wxReport = require('wx-report'); App({ onLaunch: function() { wxReport.init({ appId: 'your-app-id', // 其他配置 }); } }); // 在页面中使用 Page({ onShow: function() { wxReport.report({ path: this.route, // 其他数据 }); } }); ``` 通过以上方法,开发者可以方便地打印和管理微信小程序页面路径,从而进行调试和监控。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值