TodoMVC
TodoMVC 是比较 JavaScript 框架的经典基准。我们将其作为第一个验证目标进行移植,以验证能否完全复用 Vue 3 核心,在 Custom Renderer API 之上实现双线程的渲染管线,对接 Lynx 的原生引擎。
改动概览
大部分业务逻辑可以直接迁移 —— Composition API(ref、computed、watch)、组件模式和模板指令都完全一致。以下是我们做的改动:
我们复用了多少 Vue?
下表反映的是我们的初始原型 —— 让 TodoMVC 在 Lynx 上跑起来所需的最少自定义代码。实际代码库已经有所增长,但复用比例依然相近:绝大部分 Vue 运行时都被原样使用。
我们仅仅使用了约 1,000 行代码就跑通了 TodoMVC,这验证了我们的思路:完全复用 Vue 3 核心,并在 Custom Renderer API 之上实现双线程的渲染管线对接 Lynx 原生引擎是一条可行的道路。