首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

详解:如何用好React跨端框架开发小程序

代表有: 京东的 Taro Next ,蚂蚁的 remax 静态编译型小程序框架 所谓静态编译,就是上面说的这些框架会把用户写的业务代码解析成 AST 树,然后通过语法分析强行把用户写的类 react...Taro 团队从活跃的社区中受到了启发 ( ~~抄了人家的 remax ~~),完全重写了 Taro 的架构,带来了 Taro Next 版本。...Taro Next 和 Remax 原理相似,Remax 已经比较稳定了,下面会着重讲解 Remax 的原理,Taro Next 放在最后作为比较。 你需要对 React 的基本原理有一定的了解。...3 总结 看到这里,我们已经对 remax 这种类 react 的跨端框架整体流程有了大概的了解 Taro Next 的实现原理 Taro Next 的原理和 Remax 是很像的,这里我就偷懒一下,直接把...Taro 团队在 GMTC大会上的 ppt 贴过来了,高清版本的 ppt 可以点击这个链接下载:程帅-小程序跨框架开发的探索与实践-GMTC 终稿.pdf 下面发现和 remax 是很像的。

4.2K51

干货 | 小程序跨端框架实践之Remax

运行时的支持基于Kbone,使用的是类React语法的Rax框架 Remax 蚂蚁金服 使用原生React来构建小程序,运行时框架,从Remax2.0开始支持Web应用的构建 Taro3 京东 不限技术栈...例如京东的Taro 1/2 用穷举的方式对 JSX 可能的写法进行了一一适配,但依然需要开发者遵循大量的语法约束,避免很多动态写法。否则代码就不能正常编译运行,开发效率难以保证。...京东的 Taro 1/2 , 去哪儿的 Nanachi都属于静态编译型的React或类React跨端框架。 与之相比,运行时方案的优势就在于能直接复用现有的前端生态。...此外,从Remax2.0开始,remax/one支持Web应用的构建。 我们团队做选型的时候Taro3还是待发布状态,所以没有做太多的考虑,下面着重去比较一下Rax和Remax。...就拿Taro来说,得益于有官方团队的支持,Taro3的发展速度非常之快,各个方面都做的比较完善。而Remax社区似乎没有那么活跃,所以发展速度相对来说比较慢。期待有更多的朋友来参与开源框架的贡献。

1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【2万字长文】深入浅出主流的几款小程序跨端框架原理

    这种方式比静态编译有天然的优势,所以 Taro 的最新 Next 版本和 Remax 采用的是这种方案。 ?...代表有:京东的 Taro 1/2 , 去哪儿的 Nanachi,淘宝的rax 运行时型。代表有: 京东的 Taro Next ,蚂蚁的 remax ? 静态编译型小程序框架 ?...Taro 团队从活跃的社区中受到了启发 ( ~~抄了人家的 remax ~~),完全重写了 Taro 的架构,带来了 Taro Next 版本。...Taro Next 和 Remax 原理相似,Remax 已经比较稳定了,下面会着重讲解 Remax 的原理,Taro Next 放在最后作为比较。 你需要对 React 的基本原理有一定的了解。...Taro Next 的实现原理 Taro Next 的原理和 Remax 是很像的,这里我就偷懒一下,直接把 Taro 团队在 GMTC大会上的 ppt 贴过来了,高清版本的 ppt 可以点击这个链接下载

    2.2K44

    小程序多平台同构方案分析-kbone 与 remax

    当前国内小程序平台众多,微信小程序、支付宝小程序、头条小程序、以及未来还会出现的新小程序平台,所以为了解决一套代码可以在多个小程序平台上运行,出现了多种方案来解决,京东的 Taro、蚂蚁的 Remax、...编译时 Taro 做的很成功,Taro 可以让开发者用 React 写小程序,最终经过编译转换到不同平台的小程序。...今天讲的是另外一种方案,不靠编译时来完成,而是在运行时做适配,分别是微信提供的 kbone 与支付宝提供的 remax 两个方案。...remax 是自已写了一套 react 的 renderer,上层只支持 react。...remax remax 是通过 react 来写小程序,整个小程序是运行在 worker 线程,remax 实现了一套自定义的 renderer,原理是在 worker 线程维护了一套 vdom tree

    81310

    小程序多平台同构方案分析-kbone 与 remax

    000200eb844228d72f79291a651c13 当前国内小程序平台众多,微信小程序、支付宝小程序、头条小程序、以及未来还会出现的新小程序平台,所以为了解决一套代码可以在多个小程序平台上运行,出现了多种方案来解决,京东的 Taro...、蚂蚁的 Remax、微信的 Kbone,各有特点,主要归为两种类型,编译时与运行时适配两种。...编译时 Taro 做的很成功,Taro 可以让开发者用 React 写小程序,最终经过编译转换到不同平台的小程序。...remax 是自已写了一套 react 的 renderer,上层只支持 react。...remax 是通过 react 来写小程序,整个小程序是运行在 worker 线程,remax 实现了一套自定义的 renderer,原理是在 worker 线程维护了一套 vdom tree,这个

    2.1K50

    小程序视角下同构方案思考

    (https://nervjs.github.io/taro/)、Rax(https://rax.js.org/) 等。...那么,Taro 和 Rax 是如何解这些问题的呢? 做减法。通过对 JSX 进行「裁剪」,限制 JSX 的可用语法,以尽可能对小程序语法兼容。...而 Taro 的路子相对更「友好」一些:Taro 没有去扩展 JSX 语法,而是通过 AST 分析,尽可能将代码中的 Array.property.map、if / else ,三目表达式,枚举渲染等转换成了小程序可识别的静态...此处不再赘述,感兴趣的读者可以阅读以下 Remax 团队的文章 Remax - 使用 React 开发小程序(https://zhuanlan.zhihu.com/p/101909025) 。...NO.3 业务封装 在 Remax 的方案中,Remax 直接使用了小程序组件作为基础 DOM Element ,这也就意味着,每一个业务组件都要从最原子的 view / text 等进行渲染。

    1.8K31

    小程序技术选型

    选型考虑市面上主流小程序框架,期望能够:满足当前需求,并能扩展到其他端,比如H5技术栈统一,降低开发维护成本,提升研发效率有不错的性能框架语言微信原生 wxml,类xml写法Vue: uni-app、mpvueReact: taro...、rax、remax开发维护成本框架Uni-appMpvueRemaxRaxTaro语法VueVueReactReactReactguthub stars36.5k20.4k,停止维护4.3k7.7k30.9k...文档案例丰富较少少少丰富首先看团队的技术栈,目前以react为主,大家对react也更熟悉一些,考虑到开发维护成本,首选支持react语法的框架;在社区活跃度方面,uni-app和taro最为活跃,文档案例也最为丰富...Uni-appRemaxRaxTaro微信小程序支持支持支持支持H5支持支持支持支持支付宝小程序支持支持支持支持APP支持不支持不支持支持QQ小程序支持不支持不支持支持快应用支持不支持不支持支持从跨端兼容性上考虑,uni-app和taro...总结综上,taro 的优势在于符合团队技术栈,能让我们在书写更有效率的代码、拥有更丰富的生态的同时,还有不错的性能通过上述几个方面的对比,taro基本算是最适合团队的小程序框架。

    2K30

    详解微信原生小程序架构及同构方案

    类似框架有微信的Kbone、阿里的Remax、京东的Taro等。 Taro是在编译时将代码适配到小程序平台,而Kbone和Remax则是在运行时完成这个工作。...Remax 与Kbone上层支持多种框架(React、Vue、Angular)不同,Remax专门实现React应用向小程序的适配。...Remax和kbone类似,都是在 worker 线程维护一棵Dom tree,再把这棵 Dom tree传到render线程进行渲染,唯一的区别是remax dom tree发生变化时,会计算差异,而不需要把整棵树都传到...6 总结 Kbone和Remax实现原理基本相同,都在worker线程维护虚拟Dom tree,再把虚拟Dom tree传到render线程渲染 二者主要有两点不同:Kbone上层支持多种框架,而Remax...仅支持React;Remax的Dom tree发生变化时会计算diff,把diff映射到render线程,而Kbone是将整个Dom tree传过去。

    2.7K30

    微信小程序开发

    ,官网地址 使用 react 和 vue 开发,但是只支持 web 和微信小程序 remax,阿里团队出品,官网地址使用 react 开发,跨端都支持 我们可以看下昨天的测评文章,跟着 demo 学习下跨端的实现...uni-app 作者测评地址 taro 作者测评地址 taro2 实现原理 有过 Babel 插件开发经验的应该对一下流程十分熟悉,Taro 的编译时也是遵循了此流程,使用 babel-parser...taro2 特点 重编译时,轻运行时:这从两边代码行数的对比就可见一斑 编译后代码与 React 无关:Taro 只是在开发时遵循了 React 的语法。...直接使用 Babel 进行编译:这也导致当前 Taro 在工程化和插件方面的羸弱。...Remax 实现原理 用 react 写 Web 、可以写小程序 、可以写原生应用 Remax 的运行时本质是一个通过 react-reconciler 实现的一个小程序端的渲染器 总结和思考 距离真正的生产环境还有很长的路要走

    6.8K10

    怎样选择最适合你的开发工具

    Taro 的一个主要优势是它能够一次编写代码,同时生成多个平台的应用,大大提高了开发效率。然而,Taro 在某些复杂场景下可能存在一些性能问题,并且可能需要对平台特性进行适配。...Remax 还支持原生小程序的能力,开发者可以直接使用小程序的 API。然而,对于不熟悉 React 的开发者来说,上手 Remax 可能需要一定的学习成本。...Taro 是一个多端统一开发框架,适合需要覆盖多个平台的开发者;Mpvue 和 WePY 是基于 Vue.js 的开发框架,对于熟悉 Vue.js 的开发者来说,上手较为容易;uni-app 是一个跨平台框架...,适用于同时开发多个小程序平台的项目;Megalo 和 Remax 则提供了 React 的开发体验,适合熟悉 React 的开发者。

    41530

    微信小程序开发

    ,官网地址 使用 react 和 vue 开发,但是只支持 web 和微信小程序 remax,阿里团队出品,官网地址使用 react 开发,跨端都支持 我们可以看下昨天的测评文章,跟着 demo 学习下跨端的实现...uni-app 作者测评地址 taro 作者测评地址 taro2 实现原理 有过 Babel 插件开发经验的应该对一下流程十分熟悉,Taro 的编译时也是遵循了此流程,使用 babel-parser...taro2 特点 重编译时,轻运行时:这从两边代码行数的对比就可见一斑 编译后代码与 React 无关:Taro 只是在开发时遵循了 React 的语法。...直接使用 Babel 进行编译:这也导致当前 Taro 在工程化和插件方面的羸弱。...Remax 实现原理 用 react 写 Web 、可以写小程序 、可以写原生应用 Remax 的运行时本质是一个通过 react-reconciler 实现的一个小程序端的渲染器 总结和思考 距离真正的生产环境还有很长的路要走

    7.2K10

    干货 | 携程门票H5转小程序实践

    Taro Nanachi 跨平台 否 是 是 是 DSL React、Vue React React、Vue等 React 开发效率 一般 一般 高 高 包体积 大 大 大 较小 与原生项目混合 支持...如上图所示区域1是原生的小程序页面,区域2是我们需要提供的自定义组件,在无法统一研发模式的情况下,选择的框架必须能够与原生项目混合,RemaxTaro被排出在外。...在调研的过程中,Kbone、Remax的非业务体积已经不在可接受的范围内,而Nanachi的框架部分代码仅为40K左右,造成这种差异的原因是因为Nanachi选择的实现方式为纯静态转换。...小结:综上,Kbone不支持跨端,RemaxTaro不支持“原生项目混合”,大小也会比较限制上线,加之四个框架在性能表现上并没有谁能一枝独秀,故在当时的条件下,Nanachi是最佳选择。...另外由于框架强静态化的编译思想,导致目前依旧有不少规则需要遵守,这块Taro3表现的会比较好,规则束缚没有那么多。

    1.8K50

    Taro开发」前端多端开发,Taro观赏指南

    背景最近接到多端开发,因为老项目使用的React,考虑到迁移成本,选择了Taro,迁移成本相对较低,且上手较快。Taro和uni-app我做了一下调研,目前市面上优秀且成熟的开源框架有很多。...关于它们的对比可以参看下面这篇掘金好文:Taro vs uni-app选型对比经历Taro综合考量,尤其是前面提到的,迁移成本,我最后选择了Taro。下面主要介绍Taro的使用以及迁移中的功能总结。...里使用Taro提供的路由API,因为小程序中tabBar中的页面和其他页面的跳转方法不一样,这个区别Taro也做了区分,为此我写了一个公共方法做跳转的统一处理。...标签Taro v3.3以前是不支持使用HTML标签的,使用的是Taro提供的View、Text等标签,这些在Taro的组件库中有详细介绍。...plugins: ['@tarojs/plugin-html']}注:如果遇到不支持的标签可以使用Taro提供的组件,详见Taro组件库。

    2.1K10

    在微信小程序中直接运行React组件

    小程序运行React的方案对比 目前业界能够比较好支持小程序(没有特别注明的情况下,小程序特指微信小程序)运行React组件的,有3套方案,分别是京东凹凸实验室的taro,蚂蚁金服某团队(未找到具体团队名...)的remax,微信某团队的kbone。...Taro 编译,新版本也基于运行时 解析为wxml+js 老牌,不断发展,全平台支持,持续迭代 Remax 运行时,带编译宏 基于reconciler 最优雅,增量更新 不够成熟...但是remax迭代更新之后,它开始强依赖自己的编译工具,这直接导致我放弃在项目中使用它。...如果对它的编译工具有依赖,我们就不得不把整个项目迁移到它的编译工具,那我还不如直接使用taro这个老牌比较稳定的工具。

    4.9K50

    浅谈:在2020年,该如何选择合适的小程序框架?

    从一开始只能选择原生语法,到如今小程序框架 Rax/Taro/uni-app百花齐放。这背后是小程序原生语法造成的生态割裂,也是业务对「一码多端」的强烈诉求,更是前端现在繁荣的生态体系。...Rax 编译时/Taro 2.0 顾名思义,编译时方案的核心是通过编译分析的方式,将开发者写的代码转换成小程序原生语法。...Rax 运行时/Remax/Taro Next 运行时方案相比于上面的编译时方案,最大的优势是可以几乎没有任何语法约束的去完成代码编写。这对于开发者而言,无疑是最大的吸引力,高阶组件用起来!...以 Kbone (Rax 运行时方案是从 Kbone 改造而来) 和 Taro Next 都是通过模拟 Web 环境来彻底对接前端生态,而 Remax 只是简单的通过 react reconciler...从业务诉求来看,笔者认为,Rax 和 Taro Next 可能会比 Remax 更加开放。

    1.1K40

    Taro架构构析(2):Taro 设计思想及架构

    抹平多端差异基于编译原理,我们已经可以将 Taro 源码编译成不同端上可以运行的代码了,但是这对于实现多端开发还是远远不够。...针对这样的情况,Taro 采用了定制一套运行时标准来抹平不同平台之间的差异。...这一套标准主要以三个部分组成,包括标准运行时框架、标准基础组件库、标准端能力 API,其中运行时框架和 API 对应 @taro/taro,组件库对应 @tarojs/components,通过在不同端实现这些标准...参考内容:为何我们要用 React 来写小程序 - Taro 诞生记 https://aotu.io/notes/2018/06/25/the-birth-of-taro/index.html转载本站文章...《Taro架构构析(2):Taro 设计思想及架构》,请注明出处:https://www.zhoulujun.cn/html/webfront/AppDev/taro/8497.html

    71410

    TaroTaro-UI从入门到放弃

    封面图 TaroTaro-Ui Taro是京东旗下的跨端开发框架,功能非常强大,支持React/Vue/Nerv进行小程序,H5,甚至是RN应用。 并且以Taro命名,足见其野心不小。...Taro-UI是基于Taro框架开发的多端UI组件,支持小程序及H5端,但是不能适配ReactNative。...TaroTaro-Ui入坑到弃坑 个人最早使用Taro是在2019年,当时有个非常简单的小程序,也就三四个界面,刚好那一段时间在看Taro,那时候用的版本是1.0,整体的感觉也还好,React语法、类似小程序原生的...结论 所以最后的结论是,如果你的项目不涉及企业微信开发,那么你大可以使用TaroTaro-UI,因为这些坑都是小坑。...其实用Taro进行开发的大多还是JD内部的项目,并且大多项目跟企业微信关系不大。对于我来说Taro已经不香了。

    2.4K40
    领券