uni-app自定义导航栏问题

引用插件:uniNavBar

<uni-nav-bar statusBar="true" backgroundColor="#59AAFE" color="#FFFFFF" class="status-bar">
			<view slot="left">分类</view>
			<view>课程</view>
			<view slot="right"></view>
		</uni-nav-bar>

存在问题:

1. 给插件标签上定义css改变前、背景色是不行的。需要使用backgroundColor,color属性。

2. 非具名插槽,默认中间显示的文字,不居中,可以用flex布局,让左中右三个插槽平分,并让text剧中

3. 关于uni-nav-bar的height问题,从源码中看,他先定义了一个$nav-height: 44px;变量。

然后,如果定义statusBar=true,则又加入一个占位的组件

<uni-status-bar v-if="statusBar" />

 跟踪这个组件的源码,发现里面放了一个空的view,高度为系统statusBarHeight,又写死了一个样式,高度是20px,style属于element级别,应该高于类吧。所以这个高度应该就是20px了。

<template>
	<view :style="{ height: statusBarHeight }" class="uni-status-bar">
		<slot />
	</view>
</template>

<script>
	var statusBarHeight = uni.getSystemInfoSync().statusBarHeight + 'px'
	export default {
		name: 'UniStatusBar',
		data() {
			return {
				statusBarHeight: statusBarHeight
			}
		}
	}
</script>

<style lang="scss" scoped>
	.uni-status-bar {
		width: 750rpx;
		height: 20px;
		// height: var(--status-bar-height);
	}
</style>

那问题就来了,如果下面再放一个fix的组件,怎么把这个高度减去呢?44+20=64px。

我这里引用了一个mescroll的插件。

<mescroll-uni 
			class="jp-course-list" 
			ref="mescrollRef" 
			@init="mescrollInit" 
			@down="downCallback" 
			@up="upCallback" 
			:down="downOption" 
			:up="upOption"
			:topbar="true"
			:top="74"
		>

在真机和小程序下测试通过

===================================================================================

20200601

mescroll-body已经不是浮动的了,直接块级元素排列,不需要再计算偏移量了,改用mescroll-body

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值