分享

uni-app开发经验分享五: 解决三端页面兼容问题的方法

 悦光阴 2021-09-15

在做uni-app开发的过程中,我们最头疼可能不是开发的过程中的逻辑,而是最后要做的三端兼容测试和修改,在我开发的项目中,这一步都是最头疼和令人头秃的过程,这里总结一些个人开发遇到的问题,希望对大家有所帮助。

三端头部高度兼容

描述:在开发中,原生的标题往往不能满足我们的开发要求,我们需要自己写一个自定义的导航栏来使用,那么这就涉及一个问题,app和小程序的头部是有一段自填充高度的,原生的标题会自己填充出来,而我们自定义的导航栏需要自己设置,这里提供给大家一种思路,代码如下。

<template>
    <view>
        <!-- #ifdef APP-PLUS -->  
        <view class="status_bar" :style="{background:bg}">  
            <view class="top_view" :style="{background:bg}"></view>  
        </view>  
        <!-- #endif -->
    </view>
</template>
<script>
export default {
    props:{
        bg:{
            type:String,
            default:"#F8F8F8",
        }
    }
}
</script>
<style lang="scss">
    .status_bar {  
    height: var(--status-bar-height);  
    width: 100%;  
    background-color: #F8F8F8;  

}  
.top_view {  
    height: var(--status-bar-height);  
    width: 100%;  
    position: fixed;  
    background-color: #F8F8F8;  
    top: 0;  
    z-index: 999;  
}
</style>

数据拼接问题:

在我们上传图片的过程中,后台返回给我们图片的路径中,网站是需要我们来拼接,在拼接的过程中(app环境),我们会遇到拼接失败的问题,拼接后中间出现了/ufeff,解决代码如下:

encodeURI(that.url.toString()+res.data).replace(/%EF%BB%BF/,"")

split方法问题:

在小程序兼容的过程,split方法是无法在view里运行的,需要我们提前在onshow里处理。

多代码编辑问题:

因为有些代码三端无法同时兼容,我们需要运行各自的代码块,而识别的方法就是条件编译,官方链接如下:

https://uniapp./platform?id=%e6%9d%a1%e4%bb%b6%e7%bc%96%e8%af%91

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多