美文网首页
微信小程序根页面(加载的第一个页面)

微信小程序根页面(加载的第一个页面)

作者: 姬歌 | 来源:发表于2018-06-25 18:02 被阅读2697次

    初学微信小程序,搞了半天完全不知道根页面是怎么加载进去的!
    我们的app是先进入一个登录页面login,登录成功后进入tabbar,显示tabbar第一个item:mineProject。
    app.js文件中,只有一个onLaunch方法,里面完全没有设置根页面的方法,但却可以显示出login页面!
    再看app.json,

    {
      "pages": [
        "pages/login/login",
        "pages/mineProject/mineProject",
        "pages/personCenter/personCenter"
      ],
    "tabBar": {
        "selectedColor": "#f9614a",
        "list": [
          {
            "pagePath": "pages/mineProject/mineProject",
            "text": "我的项目",
            "iconPath": "img/icon_aite_gray.png",
            "selectedIconPath": "img/icon_aite_orange.png"
          },
          {
            "pagePath": "pages/personCenter/personCenter",
            "text": "个人中心",
            "iconPath": "img/icon_personal_gray.png",
            "selectedIconPath": "img/icon_personal_orange.png"
          }
        ]
      }
    }
    

    看完一脸懵逼啊,这里面通过"pages"属性定义了3个页面,登录(login)、我的项目(mineProject)、个人中心(personCenter);还有就是tabBar属性,包含了我的项目、个人中心。但是还是TM的没有设置根(login)页面啊!!!
    原来,"pages"属性第一个页面就是根页面!!!WTF!!我也没看到哪个文档有相关说明!如果切换mineProject到第一个位置,则app加载后,第一个显示的页面是mineProject,且其包含在tabBar之内!而不是单独一个mineProject页面!
    我记得xml项目都需要配置一个index起始页的,这种做法我真猜不到,太坑人了!好歹你在官网给个说明啊!曰!

    解决了 根页面的问题,就是从login切换到tabBar的问题,又是一个坑逼!
    代码是这样写的:

    afterLoginSuccess: function (res) {
        ...
        wx.switchTab({
          url: '../personCenter/personCenter',
        })
      }
    

    这样就完成了切换。。。按照iOS的逻辑我实在是猜不到啊,你这里仅仅是切换了tabBar的index啊,怎么就把login给移除了呢?哎,这些??逻辑没详细说明真是坑。。。(虽然你实现了)

    相关文章

      网友评论

          本文标题:微信小程序根页面(加载的第一个页面)

          本文链接:https://www.haomeiwen.com/subject/zggyyftx.html