Google Chrome 53 Beta 引入影子(Shadow)DOM V1,以及支付请求(PaymentRequest)API。
与之前影子 DOM V0 明显不同,V1 弃用了影子 DOM 对多个根节点的支持,并增加了阻止外界访问内部的根节点关闭功能。
在发布声明的博客中,Hayato Ito 强调,虽然HTML、CSS、JavaScript 非常有用也很强大,但是很难对大代码量进行维护。
Ito 表示,V1“能让元素封装自己的样式且子 DOM 不受外界 DOM 的影响。这提升了大代码量的可维护性”。同时 Chrome 仍将支持 V0。
在 HackerNews 关于 Google Chrome 53 Beta 的讨论中,用户borplk 问到“影子DOM 是否对React 等有影响?如在提升性能等方面”。
Google 工程师 Eric Bidelman回复到:
很明显,影子 DOM 是一个浏览器内嵌的提升开发者效率的工具。
在 React 中,你需要使用内联样式或支持模块化、增加 CSS 前缀的构建工具(如 CSS Modules)。内联样式会将特性配置污染到全局,并且大量内联样式会让浏览器做超出必要的上下文切换(HTML 解析器 <->CSS 解析器)。注意,后者不太会成为真实应用的性能问题。
在影子 DOM 中,你只需要写 CSS。在“
评论