uni-app开发中的那些坑-前端板块造梦空间论坛-技术交流-造梦空间论坛

uni-app开发中的那些坑

时至今日,Dcloud开发的uni-app仍然是许多公司开发APP和小程序的首选,凭借一端开发,多端发布,在安卓和IOS圈中站立了一大部分市场。

但是使用uni-app开发过的,都知道,不一定是“一端开发,多端发布”,也许是“一端开发,多端适配”。uni-app开发的软件,在不同系统,不同小程序环境中,展现出来的软件逻辑和系统界面都不怎么相同。

Uni-App开发QQ小程序

uni.showModal

showModal就是一个弹窗组件,在wx,qq中都支持(wx.showModal,qq.showModal),uni就把uni.showModal变成了wx和qq的原生组件,但是wx、qq和uni的支持程度都不一样。

QQ:qq.showToast | 文档

WX:wx.showModal(Object object) | 微信开放文档 (qq.com)

UNI-APP:uni.showToast(OBJECT) | uni-app官网 (dcloud.net.cn)

假设我们想要制作一个弹窗、要求用户输入,就可以通过uni.showModal({editable:true})创建输入弹窗,在wx,android,ios上运行正常,但是在qq上就运行不正常。

参数内嵌套参数

<div v-for="item in list" :key="item.id">
    <div @click="toHref(item[0])">{{item[1]}}</div>
</div>

//JavaScript
<script>
export default{
    data(){
        return{
            list: [["../study/study","学习"],["../code/code","生成验证码"]]
        }
    },
    methods:{
        toHref(e){
            uni.redirectTo({"url":e})
        }
    }
}
</script>

这段代码使用v-for将数组list循环输出,数组的每个子项代表链接,通过@click引起toHref,将项的第一位作为连接,项的第二位是内容。这样在H5,APP,IOS都是正常的,但是一旦编译为小程序,就会报错:e不能是undefined。因为小程序可能不支持内部传参...

 

开发小程序工具的不便

要说uni-app开发小程序哪个工具最好,那么我会说HBuilderX,但你要问哪个工具最垃圾,我可能也会说HBuilderX。

为什么好?HBuilderX是DCloud研发的专用于vue和uni-app的编辑器,有着“强如IDE”的功能,对uni-app可以起到最好的支持。

为什么差?因为软件做的太差了,动不动就卡,有的时候写着写着就闪退,或者是智能提示消失。有的时候第一天使用好好的,第二天用连点器都打开不软件、或者是无论怎么改,都打不开小程序编译...

服务器也差,服务器访问是挺快的,就是服务器看着像没做好一样,经常注册、登录页面卡,注册的时候信息填完,点注册的按钮,等几分钟都没好。有的时候访问用户后台,给我提示403和404。

 

开发APP和IOS的问题

APP和IOS的问题算是比较小的了,但是在这上面耗费的精力可能比较多。

比如我们需要做一个防截屏,用uni-app写,你在网上只能搜到android的,搜不到ios的。其实可以用刷块完成。

还有一些非常nb的地方,uni-app竟然能用app-plus,app-plus是5+ APP的,根本就不是uni-app的,但是却可以用app-plus...

 

总结

uni-app算是比较好的一个vue框架了,但是还有一些问题需要去解决,希望官方尽快修复这些问题,以免影响开发者的正常使用。

请登录后发表评论

    没有回复内容

© 造梦空间论坛