【问题标题】:Has React killed the concept of Shadow-DOMReact 是否扼杀了 Shadow-DOM 的概念?
【发布时间】:2019-08-12 04:21:12
【问题描述】:

Shadow DOM 被设计为构建基于组件的应用程序的工具。

但是如果我在 React 中使用基于组件的样式,这意味着每个组件只加载它自己的 CSS 文件,我还需要 Shadow DOM 的概念吗?

【问题讨论】:

  • 它们是两个并发概念。
  • 这是否意味着在 React 应用程序内部,如果我使用基于组件的样式的概念,我不需要使用使用 shadowRoot 的经典 shadow-DOM。不是吗?

标签: reactjs shadow-dom


【解决方案1】:

您的声明“Shadow DOM 被设计为构建基于组件的应用程序的工具。”不准确,应该是“Shadow DOM 旨在封装 DOM 和 CSS”。 我可以在不编写单个组件的情况下使用 Shadow DOM,也可以在不编写 Shadow DOM 的情况下编写组件。

React 是为自己的组件类型做自己的事情的众多框架之一。但这并没有消除 Shadow DOM 的用途。

标准 HTML 元素使用 Shadow DOM。 <video><audio> 等元素就是很好的例子。您看不到 Shadow DOM 内部的内容,也不需要。

如果更多的组件开发人员会使用<audio><video> 作为如何编写小型、可重用组件的示例,那么事情会更好地结合在一起。但是,通常情况下,开发人员希望将他们的整个页面变成一个单独的组件,这并不是编写代码的最佳方式。

React、Vue、Angular 和其他人都有自己的方式来创建组件和页面。他们是否使用Shadow DOM与Shadow DOM的需求和使用无关。

【讨论】:

    猜你喜欢
    • 2023-03-05
    • 2016-02-05
    • 2022-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-13
    • 1970-01-01
    • 2017-09-02
    相关资源
    最近更新 更多