收藏
回答

小程序在编译阶段获取windowHeight和在运行阶段不一样

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 客户端 6.7.4 2.4.2


编译阶段


组件ready时执行


复现代码


出问题的地方


显示正确的地方


最后一次编辑于  2018-12-18  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

1 个回答

  • 社区技术运营专员-娇华
    社区技术运营专员-娇华
    2018-12-18

    你好,请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2018-12-18
    赞同
    回复 1
    • 🌊
      🌊
      2018-12-18

      console.log('编译阶段', wx.getSystemInfoSync());

      这个地方打印出来的windowHeight比在ready中打印出来少50,在体验版中出现这种情况,而且是必现,在本地调试/预览偶尔会出现,怀疑getSystemInfo是有缓存的,因为一次查出来是555,后面查出来都是555。

      Component({

      options: {

      multipleSlots: true // 在组件定义时的选项中启用多slot支持

      },

      data: {

      },

      properties: {

      },

      ready() {

      console.log('on component ready', wx.getSystemInfoSync());


      },

      methods: {

      }

      });


      不好意思,懒得搞代码块,而且本地复现率不高,但是体验版的所有手机上都有问题,目前已经放弃这种加载方式了。改为生命周期内初始化

      2018-12-18
      回复