uni内scrollview自动填充剩余空间
在uni内使用scrollview时经常会遇到需要自动填满布局的情况,但是组件只时支持定义其scrollHeight,且单位为px,在自适应布局里固定高度明显就很不合适。话不多说,解决方案如下:
uni.getSystemInfo({ success: (data) => { this.nSreenHeight = data.windowHeight - data.statusBarHeight - xx; } });
通过uni的api获取到硬件信息,然后通过windowheight(内容窗口高度)- statusBarHeight (状态栏高度)-剩余元素所占空间,就可以得到剩余空间高度,再将高度赋予scrollview就可以让其填充满布局,
当然这个方法有缺陷的地方就在于,页面内的其他元素就需要使用px单位;
附:有时在开发时会遇到列表刷新后,滚动条需要回到顶部,但是uni的scrollview的scrollTop会失效,需要
this.$nextTick(() => { this.nScrollTop = 0; this.fLoadMore(); });