• 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 {
    		 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

  • 相关阅读:
    JQuery脚本-通过禁用按钮防止表单重复提交
    获得图片的圆形头像效果
    jquery通过submit()和serialize()提交表单
    nginx location 配置阐述优先级别使用说明
    友盟(Swift)-集成、统计用户数量、具体页面访问数量、具体按钮点击数量
    点击按钮,使按钮进行左右翻转动画
    清除指定区域
    语音播报-文字转系统声音
    颜色线性渐变-CAGradientLayer
    popover带箭头弹框
  • 原文地址:https://www.cnblogs.com/zhouyu629/p/13020685.html
Copyright © 2020-2023  润新知