当前位置:首页 > 电子 > 正文内容

微信小程序自定义导航栏高度获取出错windowHeight值不一致

admin1年前 (2023-03-09)电子2321
具体的实现思路是,用wx.getSystemInfo获取可使用的屏幕高度减去头部的固定高度,作为滚动层scroll-view的使用高度;
核心代码如下

    var that = this
    wx.getSystemInfo({
      success: function (res) {
        this.setData({
            tbodyHeight:res.windowHeight
        })
      }
    })



然而在实际使用过程中发现,多个页面中每个页面调用wx.getSystemInfo获取可使用的屏幕高度的值在不同真机的出现了值不一致的问题,这也就导致了滚动视图层显示效果不佳;
解决思路是通过设置全局变量的方式;具体实现方式如下;
app.js


  onLaunch: function () {
    wx.getSystemInfo({
      success: function (res) {
        that.globalData.windowHeight = res.windowHeight
      }
    })
  }
  ,
  globalData: {
    windowHeight:null
  }


需要获取windowHeight的页面js
如index.js

const app = getApp()
onReady:function(){
    var tbodyHeight = app.globalData.windowHeight - 90; //90为头部固定高度 
    that.setData({
        tbodyHeight: tbodyHeight.toFixed(0)
    })
 }


好了,以上为我对微信小程序windowHeight每个页面值不一致的解决方案。


扫描二维码推送至手机访问。

版权声明:本文由视觉博客发布,如需转载请注明出处。

本文链接:http://feelsight.cn/post/138.html

“微信小程序自定义导航栏高度获取出错windowHeight值不一致” 的相关文章

STM32 keil mdk启动代码发分析

在启动文件我们看到了__main和用户写的main,这2个是有区别的,大概流程如下: 1、复位第一条指令:Reset_Handler   PROC,这里指定为 LDR     R0, =__main。表示调用...

STM32 中断向量表的位置 、重定向

STM32 中断向量表的位置 、重定向

这篇文章已经说了STM32的启动过程: http://feelsight.cn/post/39.html 我们也知道怎么跳到main函数了,那么,中断发生后,又是怎么跑到中断入口地址的呢? 从stm32f10x.s可以看到,已经定义好了一大堆的...

ESP8266在Eclipse下设置编译模式(有boot和无boot)

ESP8266在Eclipse下设置编译模式(有boot和无boot)

更改编译模式可以更改Makefile文件中的 BOOT?=new APP?=1 SPI_SPEED?=40 SPI_MODE?=QIO SPI_SIZE_MAP?=2 可以根据2A-ESP8266__IOT_SDK_User_Manual__CN_...

锂电池充电的原理

锂电池充电的原理

    锂离子电池的充电过程可以分为四个阶段:涓流充电(低压预充)、恒流充电、恒压充电以及充电终止。     锂电池充电器的基本要求是特定的充电电流和充电电压,从而保证电池安全充电。...

FAT32文件格式详解

FAT32文件格式详解

说明: MBR :Master Boot Record ( 主引导记录)  DBR :DOS Boot Record ( 引导扇区) ...

stc-isp烧录 下载 协议 过程分析

一、数据封装格式 包头 标示 数据包长度 命令字...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。