uniapp记录----z-paging的吸顶切换+uniapp自定义导航的实现
作者:互联网
uniapp实现自定义导航
一.pages.json配置
{
"path" : "pages/tabbar/shuoshuo/shuoshuo",
"style" :
{
"navigationBarTitleText": "",
"navigationStyle":"custom",
"enablePullDownRefresh": true,
"app-plus": {
"scrollIndicator":"none"
}
}
}
二.使用graceui的页面模式进行开发
<gui-page :customHeader="true">
<!-- 自定义头部导航 -->
<view slot="gHeader">
</view>
</gui-page>
三.z-paging吸顶加切换
1.全拼模式的时候,z-paging的吸顶,会直接吸附在,手机屏幕的最上方,吸顶的tab,会和状态栏重叠交错。
2.原生导航的时候,全屏模式,会吸附在原生导航下面。但是不能自定义导航,就无法在导航中,添加丰富的内容。
3.所以要自定义导航+非全屏模式
4.z-paging的非全屏模式,需要两点配置。给z-paging组件,:fixed="false" height="1000rpx"
.
也就是取消全屏,并且给一个具体的高度。
四.uniapp+graceui+nvue+z-paging这种模式下的高度计算
1.状态栏高度
<script>
var graceJS = require('@/GraceUI5/js/grace.js');
export default{
onLoad : function(){
var systemInfo = graceJS.system();
console.log(systemInfo);
}
}
2.自定义导航高度
要使用元素选择,来计算自定义导航的高度。由于是nvue,要考虑使用weex里的dom模块
![](https://www.icode9.com/i/l/?n=22&i=blog/1515769/202207/1515769-20220715002555783-1352885995.png)
// 1.获取页面主体高度
graceJS.getRefs('guiPage', this, 0, (ref)=>{
ref.getDomSize('guiPageBody', (e)=>{
// console.log(e)
// 2. 导航的高度
// 可以 使用 graceJS.select() 函数动态获取, 也可以使用 uni.upx2px 转换已知高度
// 轮播主体高度 = 页面高度 - 导航高度
this.mainHeight = e.height;
console.log(this.mainHeight)
});
});
3.屏幕高度
参考第二条
4.z-paging的高度=3-2-1
标签:uniapp,自定义,高度,graceJS,----,paging,全屏,导航 来源: https://www.cnblogs.com/cn-oldboy/p/16479865.html