返回介绍

Driver 介绍

发布于 2019-12-26 23:51:13 字数 2050 浏览 1536 评论 0 收藏 0

Driver 定义了 VDOM 在具体容器下的渲染实现。比如在 Web 场景下,对应的 Driver 为 driver-dom,它描述了在浏览器中,如何将 VDOM 渲染为真实的 DOM。基于这种思路,同一套代码,经过不同的 Driver 就可以被运行在不同的容器下。

官方 Driver

Rax 官方提供了以下 Driver

  • driver-universal:面向多端项目的 Driver,旨在抹平 Web 与 Weex 的差异

自定义 Driver

如果想要将 Rax 运行在其他容器,可以遵循以下 Driver 规范实现自定义 Driver。

必须实现的方法

  • createBody()
  • createEmpty(component)
  • createText(text, component)
  • updateText(node, text)
  • createElement(type, props, component)
  • appendChild(node, parent)
  • removeChild(node, parent)
  • replaceChild(newChild, oldChild, parent)
  • insertAfter(node, after, parent)
  • insertBefore(node, before, parent)
  • addEventListener(node, eventName, eventHandler)
  • removeEventListener(node, eventName, eventHandler)
  • setAttribute(node, propKey, propValue)
  • removeAttribute(node, propKey)
  • setStyle(node, styleObject)

可选方法

  • beforeRender({element, hybrate, container})
  • afterRender({element, hybrate, container})
  • removeChildren(element)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文