当前位置 : 主页 > 网页制作 > React >

reactjs – 我可以在React应用程序中安全地执行DOM操作,但在React组件之外吗?

来源:互联网 收集:自由互联 发布时间:2021-06-15
我正准备做我的第一个React项目,而且我的阅读已经非常明确地说我需要让React处理所有使用虚拟DOM的渲染,并且我不应该做任何会干扰它的手动DOM操作虚拟DOM计算. 然而,我无法弄清楚的是
我正准备做我的第一个React项目,而且我的阅读已经非常明确地说我需要让React处理所有使用虚拟DOM的渲染,并且我不应该做任何会干扰它的手动DOM操作虚拟DOM计算.

然而,我无法弄清楚的是:

假设我在一个包含其他HTML的页面中的div #app中呈现了一个React组件.这是否意味着我必须避免在页面的任何位置进行任何普通的JavaScript DOM操作?或者我可以安全地在页面的其他地方使用DOM操作,只要我将#app div和元素留在实际的React组件中吗?

编辑:激励用例

我考虑使用非React组件操作React组件之外的DOM的原因主要是因为Google可以看到HTML而不会跳过很多箍.假设我想要一些关于应用程序的描述性文本对SEO有用,并且该描述可能有一些下拉切换等等(因此DOM问题).我是否真的想/需要在React中编写所有内容,因为应用程序本身的复杂用户界面使用React,如果成本使Google难以编制某些文本索引?

假设您的html文件如下所示:

<body>
  <div id="app"></div>
  <div id="others"></div>
</body>

和React初始化如下:

ReactDOM.render(<Component/>, document.getElementById('app'));

你可以安全地修改div#others和DOM的任何部分,除了div#app,因为它是由React管理的.

网友评论