joe-sky/blog

京东前端开源项目介绍 & React vs Vue框架的一些对比分析

Opened this issue · 2 comments

京东前端开源项目介绍

业界熟知的京东开源前端项目目前还比较少,下面介绍一些有一定对外影响力的框架(以下不包含未完全对外开源的框架,如JDReact等)。

基于React技术

Taro是一个由凹凸实验室开发,以React语法开发微信、百度、支付宝小程序为主,同时又能打通h5React-Native技术的多端统一开发框架。目前在前端社区有很高的人气,项目维护非常积极,正在快速迭代发展中。

Nerv也由凹凸实验室出品,它是一个浏览器兼容性可支持到IE8的类React语法框架。目前京东主站首页就是使用Nerv渲染的。

Taro UI是一款基于Taro的UI组件库,一套组件可以在微信小程序支付宝小程序百度小程序H5多端适配运行。

基于Vue技术

一款基于Vue.js 2.0的前端 UI 组件库,主要用于快速开发PC网站产品该项目目前看似已停止维护

一套移动端轻量级Vue组件库,刚在前端社区推广不久,未来预计可依赖mpvue(美团开源的Vue语法小程序框架)实现代码转微信小程序功能。

以上是京东目前较有影响力的前端开源项目,可以看出以移动端开发为主,较少涉及PC中后台开发。


下面的是一些在某些部门有一定使用量、开源且仍在持续维护,但还未对公司外推广的:

React技术

此项目由我们大部门开发及维护】一个基于ReactMobx-state-treeNornJ技术的前端命令行脚手架,支持命令行创建页面、组件、mobx store文件等,也包含EslintPrettier、自动化测试等工程化配置。目前主要支持创建基于Ant-Design(PC)及Ant-Design-Mobile(H5)的两套项目模板。

同样由凹凸实验室开源的AT-UINerv(类React框架)版。

一套基于React开发的移动端UI组件库,和上面的Nut UI较类似。

此项目由我们大部门开发及维护】一个基于ReactMobx的前端脚手架,各种工程化工具配置非常齐全。

Vue技术

Gaea构建工具是基于Node.js、Webpack模版工程等的Vue技术栈的整套解决方案,包含了开发、调试、打包上线完整的工作流程。

React和Vue技术都包含

塞伯坦(CYB)是面向前端模块化工程的构建工具。主要目的是帮助开发者统一前端开发模式和项目开发结构,提高功能扩展和降低维护成本,自动化前端工作流,提高开发效率和开发质量。

以上开源项目中包含不少前端脚手架,它们各自的侧重点又有所不同:比如NornJ-cli较为轻量易学,react-mobx-scaffold则各方面配置都比较全面。而它们又分别较为贴合各自部门的技术特点。


React vs Vue框架的一些对比分析

ReactVue作为两个当前最受欢迎的前端组件化框架,它们各自都有相当活跃且丰富的社区生态。以下是一些简单对比:

对比项 React Vue
github star数 124,817 131,413
npm周下载量 6,312,392 1,027,722
主框架包体积 React 16.2.0 + React DOM: 31.8K Vue 2.4.2:20.9K
国内开源的优秀PC端UI组件库 1️⃣ ant-design ★43958
2️⃣ rsuite ★2529
1️⃣ element-ui ★35990
2️⃣ iview ★20349
原生APP端方案 React-Native ★75279
RN是目前较成熟且稳定的js开发APP端解决方案。
Weex ★12003
Weex为阿里开源,相对于RN知名度较小,但也是Vue中较知名的APP端解决方案。
小程序跨端方案 Taro ★16568 1️⃣ Wepy ★17001
2️⃣ mpvue ★16506
3️⃣ uni-app ★4182
4️⃣ chameleon ★4121
vnode描述语言 JSX
html与js代码混写在一起,但语法噪音较小,其实上手也挺容易。也可使用模板方案替代JSX,如NornJ
vue模板
html、css、js分开编写,结构很清晰,上手容易。
数据流 1️⃣ Redux ★47603
函数式编程风格数据流架构,代码相对MobxVuex比较来说相对较复杂,适合大型项目。
2️⃣ Mobx ★18841
响应式编程风格数据流架构,相对Redux比较容易上手,配合Mobx-state-tree等状态容器方案也能适应大型项目。
Vuex ★19486
响应式编程风格数据流架构,Vue开发的标配,官方维护。
官方文档 React官方中文文档
React的官方文档今年刚被官方翻译为中文版本。不过之前已有不少国内翻译版。
Vue官方中文文档
Vue的官方文档质量很高,且一直提供官方中文版。

总结

无论选择React还是Vue,两个框架都没有相当大的差异。根据个人或团队的要求,这个决定其实是非常主观的。

  • 国内Vue的相关开源项目应是更多一些,每个领域基本都有多个选择。
  • React的国外开源生态相当多,而国内在每个领域也有顶级的生态项目。

手动点赞

点赞。