BindingX基于 weex / React Native 的富交互解决方案
BindingX 是阿里巴巴开源的一套基于 weex / React Native
的富交互解决方案。它提供了一种称之为 表达式绑定(Expression Binding)
的机制可以在 weex 上让手势等复杂交互操作以60fps的帧率流畅执行,而不会导致卡顿,因而带来了更优秀的用户体验。
简要介绍
由于 weex/RN
框架底层使用的 JS-Native Bridge
具有天然的异步特性,这使得 JS
和 Native
之间的通信会有固定的性能损耗,因此在一些复杂的实时交互场景中(如手势),JS 代码很难以高帧率运行,这极大地限制了框架的能力。目前官方并没有很好的方式解决。
而我们通过探索,提出了一种全新的方式用来解决这个问题,方案称之为 Expression Binding
。它的核心思想是将"交互行为"以表达式的方式描述,并提前预置到Native从而避免Native与JS频繁通信。
特性
复杂但流畅的交互效果
强大的表达式解析引擎
丰富的缓动函数
示例展示
下面展示了一部分使用bindingx
的示例。你可以下载或者编译playground app来获取更多的示例。同时,也可以在在线playground上编写自己的demo。
评论