一、前提

  目前我只使用过wepy和uni-app框架开发过小程序,着重比较这两个框架使用感受!

  另外wepy框架已经不维护了,希望uni-app好好维护下去!

  wepy和uni-app都是类似于vue.js规范的写法,所以熟悉Vue的人更好上手。

  要是开发者熟悉react,可以找下Taro框架

二、框架对比

  1.DCloud社区有做过试验,对于长列表加载和点赞组件响应做了性能对比。

  a) 长列表测试方式:从页面空列表开始,通过程序自动触发上拉加载,每次新增20条列表,记录单次耗时;固定间隔连续触发 N 次上拉加载,使得页面达到 20*N 条列表,计算这 N 次触发上拉到渲染完成的平均耗时。

  结果如下图:

  发现wepy栏对应的测试数据不完整,变相说明页面组件超过500个时,wepy无法完成渲染造成异常。

  反观uni-app,比原生性能略好?

    因为原生在setData调用更耗时,如果不优化uni-app性能更好,优化后还是比不了原生的。

  b)点赞组件测试方式:选中某微博,点击“点赞”按钮,实现点赞状态状态切换;点赞按钮 onclick函数开头开始计时,setData回调函数开头结束计时;

    结果如下图:

  wepy出现同样情况,uni-app与原生相差不多;

  总结来说,性能消耗方面,uni-app更胜一筹,重点是页面渲染数据用了data(){}(〃'▽'〃)。

  我太喜欢看他们的社区了~~

~~偷偷的来更新~~

  2.wepy有wepy-cli脚手架,触发事件、组件循环等有更好的语法提供
      uni-app有HBuilderX开发工具

三、开发风格

  1. wepy支持vue的诸多特征,可按照vue单文件组件的规范写代码(但还是要学习wepy滴);

    生命周期同原生一样,再糅杂一些vue的特性,但对于自定义方法需要与methods平级处理;可以用css预处理器,很方便;
    前提需要安装它的脚手架去做构建处理。

  2. uni-app有它自己的开发软件,内置了一套流程,让你点点点就能发布。
    而组件和api完全是按照小程序的语法来处理,只不过uni做了api的封装来兼容到多端。

    uni-app也是支持所有vue的语法,另外uni还新增了生命周期。

  3.  总体来说两个框架的开发模式比较统一,学好vue,这两个也就OK。
    npm第三方包和Promise都能很好的支持,对开发效率也有一定的提高。

四、开发感受 

  不管使用哪个框架,小程序基础知识一定要牢固,要花时间学习好基础概念哒。

  框架能组件化开发,效率更高,使用成熟的IDE工具简直事半功倍,快的不要不要的;
  微信开发工具太烂,还要不断手动处理setData,一点想撸码的心情都没有。

  多用一个框架就有许多潜在的坑,这个是无法避免的,去看看github上的issue就知道了;
  如果要考虑小程序多端复用,选择uni-app更靠谱。(小声bb,平台跨的越多越不稳定,只要有一个端改动,框架没更上,就GG)
  要是只考虑微信小程序和h5平台,wepy足够用并且框架成熟,如果有需要看下我遇到的坑。(好吧,wepy不更新了,转换的h5也不怎么样,bug多)
  要不就用原生撸代码,社区欢迎你。

  我已经上了wepy和uni-app的船了,希望早日上岸!(对不起,我想下了wepy的船)
  瞎说完毕

  谢谢观看

  鞠躬

  啾咪^_^~~~~~

实践出真知,小程序wepy,uni-app框架开发使用!的更多相关文章

  1. 微信小程序与传统APP十大优劣对比

    随着微信公众平台的开放,微信端小程序涌现市场,带来很很多便利和简单的原生操作,询:微信端小程序是否会替代传统的APP应用?两者的优劣如何?我们一起来看看传统APP与微信端小程序十大优劣对比       ...

  2. 小程序wepy.js框架总结

    wepy.js借鉴了Vue的语法风格和功能特性,对官方提供的框架进行了封装,更贴近于MVVM架构模式,让开发者更加容易上手,增加开发效率.(脏数据处理--是否有标识.是否有响应) 前端开发的对组件化开 ...

  3. 微信小程序、安卓APP、苹果APP对比分析

    今天的话题主要是关于微信小程序.安卓APP.苹果APP对比分析.既然是对比分析肯定是将它们一个一个说明. 本篇不涉及技术话题,只讲解微信小程序.安卓APP.苹果APP它们各自的优缺点及其应用场景. 一 ...

  4. APP跳转小程序,小程序跳转APP

    关注公共号,搜索 "APP跳转小程序,小程序跳转APP",查看原文 前置条件: 开发环境:windows 开发框架:uni-app , H5+,nativeJS,mpvue 编辑器 ...

  5. 微信小程序中的app.js-清除缓存

    微信小程序中的app.js 关于小程序app.js生命周期的介绍 App(Object) App() 函数用来注册一个小程序.接受一个 Object 参数,其指定小程序的生命周期回调等. App() ...

  6. 微信小程序wepy开发循环wx:for需要注意

    微信小程序wepy开发循环wx:for需要注意 item index值必须在wx:for之后使用 <view wx:for="{{tablist}}" class=" ...

  7. 小程序支持打开APP了 还有小程序的标题栏也可以自定义

    就在刚刚,小程序上线两个新能力——小程序支持打开APP了,小程序的标题栏区域开放自定义.用户可以在小程序里更方便地获取到APP的服务了——APP链接分享到微信,打开小程序页面后,用户从该小程序页面里, ...

  8. 小程序支持打开APP

    根据微信的官方文档,小程序支持打开APP,专门研究了下这个API有什么,官方文档地址如下 https://mp.weixin.qq.com/debug/wxadoc/dev/component/but ...

  9. 微信小程序与手机APP区别

    微信小程序与手机APP区别 ------------------<><><><>------------------ 微信小程序自去年年初,张小龙放话要 ...

  10. 万事开头难 && 实践出真知

    实践出真知,真是千古不变的真理. 前几天在顺手做一个万年历项目,实现了用TFT屏显示实时时间,日期,温度,和按键设置时间,能在特定时间显示特定的话语在显示屏上面.其实这个项目现在想想还是挺简单的.我的 ...

随机推荐

  1. 018.CentOS升级内核

    一 更新yum源 1 [root@localhost ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 2 [root@lo ...

  2. JavaScript 的优雅编程技巧:Singleton Pattern

    JavaScript 的优雅编程技巧:Singleton Pattern 定义 单例模式:保证一个类仅有一个实例,并提供一个访问的全局访问点. 特点 仅有一个实例对象 全局都可访问该实例 主动实例化 ...

  3. Prometheus部署以及问题解决

    Prometheus作用: Prometheus监控(Prometheus Monitoring)是一种开源的系统监控和警报工具.它最初由SoundCloud开发并于2012年发布,并在2016年加入 ...

  4. B2B进销存ERP后台管理系统的逻辑架构与设计,AxureRP原型产品经理实战案例

    模块分析: 进销存系统是一种用于企业管理库存.销售和采购活动的信息系统.它的主要作用包括但不限于以下几个方面: 1.库存管理 实时库存跟踪:准确记录每种商品的库存数量,确保数据的实时性和准确性. 库存 ...

  5. 冲刺 NOIP 400pts + 之神仙专题

    冲刺专题之 \(DP\) \(T_A\) Helping People $$codeforces$$ 题意 给定一个长为 \(n\) 序列 \(A\) , 其中有 \(q\) 个区间 \([l , r ...

  6. Adobe Photoshop cc2022 Mac中文破解版下载 支持intel/M1/M2/M3

    Adobe Photoshop cc2022 Mac版,支持intel.M1.M2.M3芯片,全系都能使用,最低系统需求:11.0以上.建议安装此版本或者ps2024版本. 下载地址放到最后,先来看安 ...

  7. 【Mac + Python + Selenium】之获取验证码图片code并进行登录

    自己新总结了一篇文章,对代码进行了优化,另外附加了静态图片提取文字方法,两篇文章可以结合着看:<[Python]Selenium自动化测试之动态识别验证码图片方法(附静态图片文字获取)> ...

  8. Windows 将透明的图片旋转,裁剪

    使用 Microsoft Office Picture Manager 本来是想找个Java代码,跑一下 忽然在 Windows 图片打开方式中有一个  Microsoft Office Pictur ...

  9. react + vite

    Vite 和 Yarn都比较新的技术 Ref: https://www.digitalocean.com/community/tutorials/how-to-set-up-a-react-proje ...

  10. pgsql 查询及更新json字段的某个属性

    pgsql 查询及更新json字段的某个属性 一.查询json字段中的某个属性 查询 t_user 表中json 字段 info 中的 name 属性 select info ->> 'n ...