强烈推荐:绝对是最好的一个小程序开源框架

特别说明:这是我目前在接触过和使用过的,自认为是最好用的一个小程序开源框架库。

小程序到底有多火,看看目前推出的开源框架以及组件库就知道了。由于小程序开发的火爆,大家都在致力于探索如何更好的,更加高效的开发小程序,以至于很多公司都贡献了小程序开源框架和组件库。

比如我列举一些:

开源框架

1、 mpvue

mpvue 是美团点评开源的一个使用 Vue.js 开发小程序的前端框架。框架基于 Vue.js 核心,mpvue 修改了 Vue.js 的 runtime 和 compiler 实现,使其可以运行在小程序环境中,从而为小程序开发引入了整套 Vue.js 开发体验。使用 mpvue 开发小程序,你将在小程序技术体系的基础上获取到这样一些能力:

  • 彻底的组件化开发能力:提高代码复用性
  • 完整的 Vue.js 开发体验
  • 方便的 Vuex 数据管理方案:方便构建复杂应用
  • 快捷的 webpack 构建机制:自定义构建策略、开发阶段 hotReload
  • 支持使用 npm 外部依赖
  • 使用 Vue.js 命令行工具 vue-cli 快速初始化项目
  • H5 代码转换编译成小程序目标代码的能力

Github:https://github.com/Meituan-Dianping/mpvue 官网:http://mpvue.com/

2、Tina.js

Tina.js 一款轻巧的渐进式微信小程序框架。

特性: 轻盈小巧。 极易上手,保留 MINA (微信小程序官方框架) 的大部分 API 设计;无论你有无小程序开发经验,都可以轻松过渡上手。 渐进增强,既有状态管理器,也有路由增强,还可以自己编写插件。

Tina.js 开源框架地址:https://github.com/tinajs/tina

3、Taro

Taro 是由京东 - 凹凸实验室打造的一套遵循 React 语法规范的多端统一开发框架。我要没记错的话,是最近刚刚开源的。

使用 Taro,我们可以只书写一套代码,再通过 Taro 的编译工具,将源代码分别编译出可以在不同端(微信小程序、H5、App 端等)运行的代码。同时 Taro 还提供开箱即用的语法检测和自动补全等功能,有效地提升了开发体验和开发效率。

官网:http://taro.aotu.io/ GitHub: http://github.com/nervjs/taro

4、wepy

WePY 是一款让小程序支持组件化开发的框架,通过预编译的手段让开发者可以选择自己喜欢的开发风格去开发小程序。框架的细节优化,Promise,Async Functions 的引入都是为了能让开发小程序项目变得更加简单,高效。

特性:

  • 类 Vue 开发风格
  • 支持自定义组件开发
  • 支持引入 NPM 包
  • 支持 Promise
  • 支持 ES2015 + 特性,如 Async Functions
  • 支持多种编译器,Less/Sass/Styus、Babel/Typescript、Pug
  • 支持多种插件处理,文件压缩,图片压缩,内容替换等
  • 支持 Sourcemap,ESLint 等
  • 小程序细节优化,如请求列队,事件优化等

Github :https://github.com/Tencent/wepy 官网:https://tencent.github.io/wepy

5、weweb

weweb 是一个兼容小程序语法的前端框架,你可以用小程序的写法,来写 web 应用。如果你已经有小程序了,通过它你可以将你的小程序运行在浏览器中。

特性: 跨平台,一套代码多端运行(小程序、h5、未来直接打包成安卓、ios app 也不是梦) 自带常用组件,完美继承了小程序内置组件 兼容小程序 rpx 语法,使页面更容易适配各种机型

GitHub:https://github.com/wdfe/weweb

组件库

还有各种开源的组件库,比如有以下这几个:

有赞的 zanui-weappiview 这两个比较出名。

这两个组件库我之前在我的公众号都推荐过,具体用法和功能我就不多介绍了,自己找我以前的推文或者自己搜索一下就很清楚了。用法很简单。

大餐来了

上面介绍了 5 个开源框架和两个组件库,我并不是说上面的不好,上面的绝对都很好,不管上面的几个开源框架还是组件库都是大厂产品,都很好。但是他们仅仅就是开源框架就是开源框架,组件库就是组件库。一直没有满足我单独针对微信小程序开发的痛点。

小程序开发一个是开源框架的好用,另外一个就是丰富的组件库,单纯官方推出的并不能满足我们的需要,上面的框架和组件库都是分开的。所以并不能解决我的痛点。而今天我推荐的这个开源框架既能提供框架也丰富扩展了很多组件,使我们开发的时候不用担心再自己封装组件了

其实上面分享的组件库有一个重大的缺点,他们组件库足够丰富,但是对于样式的自定义很死板,不灵活,但是今天的这个就灵活多了。

我给大家推荐的这个开源框架就是:touchwx

Touch WX 是一套完全免费的微信小程序开发框架,包含丰富的 UI 控件用于官方组件的补充。特点如下:

1、组件扩充:

增加了 30 多种常用的组件用于官方组件的补充。

2、功能扩充:

兼容阿里的 iconfont 图标库,海量矢量图标随意使用;补充了常用样式库、支持 less 语法、支持全局配置主题色等

3、开发体验改善:

四文件方式改为单文件方式,通过 VSCode 编辑器 + 插件的方式开发,拥有 web 开发体验;

4、小程序转为 H5 应用:

可以与 H5 开发框架 Touch UI 工程相互转换,发布成 webApp。开发一套代码,拥有两套应用。

这套框架的原理是:

将 Touch WX 工程中所写的代码进行编译,直接输出为微信小程序工程原始代码。扩充的 30 多种组件,完全是基于小程序官方的自定义组件机制实现(row&col 除外)。

所以它支持小程序的全部语法,怎么开发小程序,就怎么开发 Touch WX。

不过因为是单文件的开发方式,在文件的代码结构上稍有不同。请注意这一点。

这样好处在于:

1、开发者迁移成本很小。

可以轻松的将已有的小程序移植为 Touch WX 工程,来使用它的扩展能力;

2、便于排查错误。

当遇到问题时,开发者也可以随时查看输出的小程序原始代码来定位问题所在。不会搞不清楚到底是框架问题还是自己代码的问题;

3、按需编译

由于小程序对体积有限制,在使用框架开发时,只有使用到的组件才会编译输出为小程序源码。没用到的不会输出。

4、不会对框架产生依赖。

以后不想用了这套框架,可以直接对已经输出的小程序工程进行维护。

目前我认为单独针对小程序开发的话,这个开源框架是最适合我们的,效率也是最高的。

GitHub:https://github.com/uileader/touchwx 官网:https://www.wetouch.net/wx.html

最后,大家可以长按下方二维码,体验一下:

技术,职场,产品,思维

行业观察

原文发布于微信公众号 - 非著名程序员(non-famous-coder)

原文发表时间:2018-07-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏沈唁志

在ThinkPHP5框架中使用QueryList4做采集

25030
来自专栏WeTest质量开放平台团队的专栏

面向亿万级用户的QQ一般做什么?——兴趣部落的Web同构直出分享

所以可以把直出定义为:“以node作为后端语言实现的服务端渲染并输出HTML字符串到客户端的一项技术”。这样浏览器渲染首屏的过程就由非直出下的先请求HTML,再...

11420
来自专栏IT米粉

打造属于自己的博客app——基于react native和博客园接口

关注react native这个技术很久了,去年就做了一个简单的Demo,最近有时间,重新了解了一下react native的现状,发现已经有很大的进步,现在完...

30450
来自专栏IT大咖说

通过QQ浏览器内核看browser性能优化

摘要 QQ浏览器内核架构组负责人,通过QQ浏览器X5内核在加载速度、流畅度方面所做的优化工作,带你了解浏览器内核的工作原理、展示前端优化的指导性原则、以及更佳的...

51750
来自专栏安恒信息

旧版Java/ActiveX浏览器插件存安全漏洞,将遭IE屏蔽

虽然微软的IE浏览器在安全性上已经越来越好,但是由于其庞大的普及率及版本参差不齐,因此有许多旧版本的插件也会让新的IE浏览器成为受到攻击的目标。为...

33260
来自专栏腾讯社交用户体验设计

QQ Mac版 Touch Bar功能设计

18410
来自专栏SAP梦心的SAP分享

良好的用户体验的几条箴言

30、要认为:所有的用户都是小白,傻瓜,记忆力差,懒癌晚期,不耐烦,不懂电脑,不会用手机,网速差,会乱操作的人。以此前提去设计UE;

27770
来自专栏腾讯移动品质中心TMQ的专栏

腾讯TMQ在线沙龙|老司机教你玩转Appium自动化测试

Appium自动化测试 活动时间:2016年10月13日 QQ群视频交流 活动介绍:TMQ在线沙龙第十期分享 本次分享的主题是老司机教你玩转Appium自动化测...

37270
来自专栏极乐技术社区

小灯灯实战系列《三》微信小程序:仿今日头条(下)

接着上一篇  上一篇文章中,我们已经完成了头条的新闻列表、新闻详情功能了,但是还存在一些值得优化的地方,以及评论功能没有加上。  欢迎Star Github开源...

35660
来自专栏京东技术

微信手Q node.js直出框架Hawaii剖析——京东前台技术委员会专题

手机京东技术团队 ? 作者简介 资深前端开发工程师 京东前台技术委员会委员 微信手Q运营产品前端开发组组长 目前负责微信手Q购物入口的前端基础建设及port...

32560

扫码关注云+社区

领取腾讯云代金券