手机端开发(uni-app、vant、mui)优缺点分析

疫情期间,使用过uni-app,最近又接触了vant,但是由于项目部署原因(项目不支持前后端分离,仅支持静态页Html+css项目),所以最后用mui开发一套。今天就介绍一下,我用过这三个框架的看法以及他们之间的优缺点。

一、优点

1、uni-app

开发时参照uni-app官网会更便捷

  1. uni-app是一套可以适用多端的开源框架,是一个使用 Vue.js
  2. 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉/淘宝)、快应用等多个平台。
  3. uni-app对前端开发人员比较友好,学习成本比较低,因为uni-app是基于vue.js。并且它的封装的组件和微信小程序的组件一样,所以对于现在的主流前端人员来说学习成本几乎为0。
  4. uni-app使用HbuildX进行开发。使用HBuilderX进行开发可以说是速度杠杠的。开发速度比较快,ps:我是一个webstom党(vue很上手),但是对于开发纯静态页这种会用HBuilderX,个人觉得很不错无论是环境还是提示效果都很丰富。

2、vant

开发时参照vant官网会更便捷

  1. 提供 60 多个高质量组件,覆盖移动端各类场景、性能极佳,组件平均体积不到 1kb(min+gzip)
  2. 单元测试覆盖率 90%+,提供稳定性保障、完善的中英文文档和示例
  3. 支持 Vue 2 & Vue 3、按需引入、主题定制、国际化、 TypeScript、 SSR
  4. 建议搭配 webpack,babel 使用 Vant,这样可以使用 webpack 提供的丰富插件和个性化配置。Vant 支持 babel-plugin-import,通过 babel 插件使用 Vant,可以优化代码体积,提高前端性能。
  5. 轻量化:作为移动端组件库,Vant 一直将轻量化作为核心开发理念。为了平衡日益丰富的功能和轻量化之间的矛盾关系,Vant
    内部使用了很多的优化方式,包括支持组件按需加载、公共模块复用、组件编译流程优化等。
  6. 丰富实用的业务组件:Vant 不只是提供基础的UI组件,为了方便开发者快速构建移动商城,Vant
    增加了许多移动商城内常用的业务组件。类似于地址管理、优惠券、省市县选择等。

3、mui

开发时参照mui官网会更便捷

  1. MUI轻量、且不依赖任何第三方JS库,压缩后的JS和CSS文件仅有100+K和60+K
  2. 原生UI:鉴于之前的很多前端框架(特别是响应式布局的框架),UI控件看起来太像网页,没有原生感觉
  3. MUI以iOS平台UI为基础,补充部分Android平台特有的UI控件
  4. 有配套的开发工具HBuilder,提供完善的代码提示以及打包流程的简化,同时也提供相应的DEMO,对于入门来说,应该算是非常人性化和简单的。
  5. MUI只专注于UI的适配和渲染以及各种UI模块的封装,不提供其他与UI无关的功能。这可以极大的提高灵活性,方便与其他框架融合使用,同时也有效的保证框架不会太过臃肿庞大,从而影响了性能。

二、缺点

1、uni-app

  1. 很多人以为小程序是微信先推出的,其实,DCloud才是这个行业的开创者。所以uni-app问世的时间比较短,有很多地方还不是完善。
  2. 快应用仅支持 vivo 、oppo、华为
  3. 360小程序仅 windows平台支持,需要在360浏览器中打开

2、vant

  1. vant更多情况是适用移动商城的开发,如果项目是其他业务,或者产品的设计风格和vant不一样,则不太适用vant

3、mui

  1. 官方文档优点过于简陋,对于JS部分的文档偏少,如有需要进行定制或者修改的话,不方便。对框架的实现原理和代码缺少解释性的文档,不方便老手进行针对性的定制或者遇到问题时进行排查。
  2. 对vue的支持目前还存在问题,当用vue对数据进行渲染后,mui的组件很多时候都无法做出合适的响应,比如无法下拉之类的问题。
  3. 对于三方的SDK的支持不够完善。目前对于地图的支持并不好。

个人观点

以上三种前端手机开发都有接触开发过,从样式上更推荐uni-app和vant,这两款的组件样式还是比较符合现在的开发需求,反之mui的样式更更接近原生那种,整体的样式很不符合开发需求,从开发角度讲,我个人比较擅长vue,所以vant更顺手一些,如果想要纯静态页的话,更推荐uni-app,易上手,修改及查找文档也比较方便,反之mui文档过于简陋,查找很不方便,样式不和心意。总之这是我的个人观点,非喜勿喷。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值